0s autopkgtest [11:23:51]: starting date and time: 2024-10-30 11:23:51+0000 0s autopkgtest [11:23:51]: git checkout: 6f3be7a8 Fix armhf LXD image generation for plucky 0s autopkgtest [11:23:51]: host juju-7f2275-prod-proposed-migration-environment-14; command line: /home/ubuntu/autopkgtest/runner/autopkgtest --output-dir /tmp/autopkgtest-work.uwfcs33y/out --timeout-copy=6000 --setup-commands /home/ubuntu/autopkgtest-cloud/worker-config-production/setup-canonical.sh --apt-pocket=proposed=src:setuptools --apt-upgrade translate-toolkit --timeout-short=300 --timeout-copy=20000 --timeout-build=20000 --env=ADT_TEST_TRIGGERS=setuptools/75.2.0-1 -- ssh -s /home/ubuntu/autopkgtest/ssh-setup/nova -- --flavor autopkgtest --security-groups autopkgtest-juju-7f2275-prod-proposed-migration-environment-14@lcy02-8.secgroup --name adt-plucky-amd64-translate-toolkit-20241030-112351-juju-7f2275-prod-proposed-migration-environment-14-38b08e01-fa28-4a1c-aa77-ce799fd62308 --image adt/ubuntu-plucky-amd64-server --keyname testbed-juju-7f2275-prod-proposed-migration-environment-14 --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/ 1060s autopkgtest [11:41:31]: testbed dpkg architecture: amd64 1060s autopkgtest [11:41:31]: testbed apt version: 2.9.8 1060s autopkgtest [11:41:31]: @@@@@@@@@@@@@@@@@@@@ test bed setup 1060s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [73.9 kB] 1060s Get:2 http://ftpmaster.internal/ubuntu plucky-proposed/universe Sources [213 kB] 1060s Get:3 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [30.5 kB] 1060s Get:4 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse Sources [2840 B] 1060s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/restricted Sources [7016 B] 1060s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 Packages [66.9 kB] 1060s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/main i386 Packages [25.6 kB] 1060s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/restricted amd64 Packages [32.6 kB] 1060s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/universe i386 Packages [84.3 kB] 1060s Get:10 http://ftpmaster.internal/ubuntu plucky-proposed/universe amd64 Packages [258 kB] 1060s Fetched 794 kB in 0s (3552 kB/s) 1060s Reading package lists... 1062s Reading package lists... 1063s Building dependency tree... 1063s Reading state information... 1063s Calculating upgrade... 1064s The following NEW packages will be installed: 1064s python3-jaraco.text 1064s The following packages will be upgraded: 1064s python3-pkg-resources python3-setuptools 1064s 2 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. 1064s Need to get 802 kB of archives. 1064s After this operation, 12.3 kB of additional disk space will be used. 1064s Get:1 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-jaraco.text all 4.0.0-1 [11.5 kB] 1064s Get:2 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 python3-pkg-resources all 75.2.0-1 [134 kB] 1064s Get:3 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 python3-setuptools all 75.2.0-1 [657 kB] 1064s Fetched 802 kB in 0s (9925 kB/s) 1064s Selecting previously unselected package python3-jaraco.text. 1064s (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 ... 75315 files and directories currently installed.) 1064s Preparing to unpack .../python3-jaraco.text_4.0.0-1_all.deb ... 1064s Unpacking python3-jaraco.text (4.0.0-1) ... 1065s Preparing to unpack .../python3-pkg-resources_75.2.0-1_all.deb ... 1065s Unpacking python3-pkg-resources (75.2.0-1) over (74.1.2-1) ... 1065s Preparing to unpack .../python3-setuptools_75.2.0-1_all.deb ... 1065s Unpacking python3-setuptools (75.2.0-1) over (74.1.2-1) ... 1065s Setting up python3-pkg-resources (75.2.0-1) ... 1065s Setting up python3-jaraco.text (4.0.0-1) ... 1066s Setting up python3-setuptools (75.2.0-1) ... 1067s Reading package lists... 1067s Building dependency tree... 1067s Reading state information... 1068s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1068s Hit:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease 1068s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease 1068s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease 1068s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease 1070s Reading package lists... 1070s Reading package lists... 1070s Building dependency tree... 1070s Reading state information... 1071s Calculating upgrade... 1071s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1071s Reading package lists... 1072s Building dependency tree... 1072s Reading state information... 1072s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1073s autopkgtest [11:41:44]: testbed running kernel: Linux 6.11.0-8-generic #8-Ubuntu SMP PREEMPT_DYNAMIC Mon Sep 16 13:41:20 UTC 2024 1073s autopkgtest [11:41:44]: @@@@@@@@@@@@@@@@@@@@ apt-source translate-toolkit 1074s Get:1 http://ftpmaster.internal/ubuntu plucky/universe translate-toolkit 3.13.2-2 (dsc) [3132 B] 1074s Get:2 http://ftpmaster.internal/ubuntu plucky/universe translate-toolkit 3.13.2-2 (tar) [1173 kB] 1074s Get:3 http://ftpmaster.internal/ubuntu plucky/universe translate-toolkit 3.13.2-2 (diff) [24.5 kB] 1075s gpgv: Signature made Mon Jul 22 07:46:21 2024 UTC 1075s gpgv: using RSA key 90E2D2C1AD146A1B7EBB891DBBC17EBB1396F2F7 1075s gpgv: Can't check signature: No public key 1075s dpkg-source: warning: cannot verify inline signature for ./translate-toolkit_3.13.2-2.dsc: no acceptable signature found 1075s autopkgtest [11:41:46]: testing package translate-toolkit version 3.13.2-2 1075s autopkgtest [11:41:46]: build not needed 1075s autopkgtest [11:41:46]: test translate-toolkit: preparing testbed 1076s Reading package lists... 1076s Building dependency tree... 1076s Reading state information... 1076s Starting pkgProblemResolver with broken count: 0 1077s Starting 2 pkgProblemResolver with broken count: 0 1077s Done 1077s The following additional packages will be installed: 1077s dictionaries-common emacsen-common gettext hunspell-en-us libapr1t64 1077s libaprutil1t64 libaspell15 libenchant-2-2 libexttextcat-data libgomp1 1077s libhunspell-1.7-0 libserf-1-1 libsvn1 libutf8proc3 libxapian30 libxslt1.1 1077s python3-aeidon python3-bs4 python3-charset-normalizer python3-cheroot 1077s python3-dateutil python3-diff-match-patch python3-enchant python3-iniparse 1077s python3-levenshtein python3-lxml python3-mistletoe python3-phply python3-ply 1077s python3-pycountry python3-rapidfuzz python3-ruamel.yaml 1077s python3-ruamel.yaml.clib python3-simplejson python3-six python3-soupsieve 1077s python3-translate python3-vobject python3-wcwidth python3-xapian subversion 1077s translate-toolkit 1077s Suggested packages: 1077s ispell | aspell | hunspell wordlist autopoint gettext-doc libasprintf-dev 1077s libgettextpo-dev hunspell openoffice.org-hunspell | openoffice.org-core 1077s aspell libenchant-2-voikko xapian-tools python-charset-normalizer-doc 1077s python-lxml-doc python-ply-doc python-rapidfuzz-doc python3-subversion 1077s translate-toolkit-doc xapian-doc db5.3-util libapache2-mod-svn 1077s subversion-tools 1077s Recommended packages: 1077s aspell-en | aspell-dictionary | aspell6a-dictionary enchant-2 1077s python3-cssselect python3-html5lib python3-tz translate-toolkit-doc 1077s The following NEW packages will be installed: 1077s autopkgtest-satdep dictionaries-common emacsen-common gettext hunspell-en-us 1077s libapr1t64 libaprutil1t64 libaspell15 libenchant-2-2 libexttextcat-data 1077s libgomp1 libhunspell-1.7-0 libserf-1-1 libsvn1 libutf8proc3 libxapian30 1077s libxslt1.1 python3-aeidon python3-bs4 python3-charset-normalizer 1077s python3-cheroot python3-dateutil python3-diff-match-patch python3-enchant 1077s python3-iniparse python3-levenshtein python3-lxml python3-mistletoe 1077s python3-phply python3-ply python3-pycountry python3-rapidfuzz 1077s python3-ruamel.yaml python3-ruamel.yaml.clib python3-simplejson python3-six 1077s python3-soupsieve python3-translate python3-vobject python3-wcwidth 1077s python3-xapian subversion translate-toolkit 1077s 0 upgraded, 43 newly installed, 0 to remove and 0 not upgraded. 1077s Need to get 11.5 MB/11.5 MB of archives. 1077s After this operation, 53.1 MB of additional disk space will be used. 1077s Get:1 /tmp/autopkgtest.5UDgDC/1-autopkgtest-satdep.deb autopkgtest-satdep amd64 0 [892 B] 1077s Get:2 http://ftpmaster.internal/ubuntu plucky/main amd64 emacsen-common all 3.0.5 [12.1 kB] 1077s Get:3 http://ftpmaster.internal/ubuntu plucky/main amd64 dictionaries-common all 1.29.7 [188 kB] 1077s Get:4 http://ftpmaster.internal/ubuntu plucky/main amd64 libgomp1 amd64 14.2.0-7ubuntu1 [148 kB] 1077s Get:5 http://ftpmaster.internal/ubuntu plucky/main amd64 gettext amd64 0.22.5-2 [948 kB] 1077s Get:6 http://ftpmaster.internal/ubuntu plucky/main amd64 hunspell-en-us all 1:2020.12.07-2 [280 kB] 1077s Get:7 http://ftpmaster.internal/ubuntu plucky/main amd64 libapr1t64 amd64 1.7.2-3.2ubuntu1 [108 kB] 1077s Get:8 http://ftpmaster.internal/ubuntu plucky/main amd64 libaprutil1t64 amd64 1.6.3-3ubuntu1 [92.8 kB] 1077s Get:9 http://ftpmaster.internal/ubuntu plucky/main amd64 libaspell15 amd64 0.60.8.1-1build1 [323 kB] 1077s Get:10 http://ftpmaster.internal/ubuntu plucky/main amd64 libhunspell-1.7-0 amd64 1.7.2+really1.7.2-10build3 [294 kB] 1077s Get:11 http://ftpmaster.internal/ubuntu plucky/main amd64 libenchant-2-2 amd64 2.3.3-2build2 [51.4 kB] 1077s Get:12 http://ftpmaster.internal/ubuntu plucky/main amd64 libexttextcat-data all 3.4.7-1build1 [193 kB] 1077s Get:13 http://ftpmaster.internal/ubuntu plucky/universe amd64 libserf-1-1 amd64 1.3.10-3ubuntu1 [48.2 kB] 1077s Get:14 http://ftpmaster.internal/ubuntu plucky/universe amd64 libutf8proc3 amd64 2.9.0-1build1 [70.6 kB] 1077s Get:15 http://ftpmaster.internal/ubuntu plucky/universe amd64 libsvn1 amd64 1.14.4-2 [1353 kB] 1078s Get:16 http://ftpmaster.internal/ubuntu plucky/universe amd64 libxapian30 amd64 1.4.25-1 [718 kB] 1078s Get:17 http://ftpmaster.internal/ubuntu plucky/main amd64 libxslt1.1 amd64 1.1.39-0exp1ubuntu1 [169 kB] 1078s Get:18 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-aeidon all 1.15-1 [231 kB] 1078s Get:19 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-soupsieve all 2.6-1 [33.0 kB] 1078s Get:20 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-bs4 all 4.12.3-3 [109 kB] 1078s Get:21 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-charset-normalizer amd64 3.3.2-2 [118 kB] 1078s Get:22 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-cheroot all 10.0.0+ds1-2 [73.0 kB] 1078s Get:23 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-six all 1.16.0-7 [13.1 kB] 1078s Get:24 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-dateutil all 2.9.0-2 [80.3 kB] 1078s Get:25 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-diff-match-patch all 20230430-1 [33.1 kB] 1078s Get:26 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-enchant all 3.2.2-1 [34.0 kB] 1078s Get:27 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-rapidfuzz amd64 3.9.4+ds-1 [2028 kB] 1078s Get:28 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-levenshtein amd64 0.25.1-3 [120 kB] 1078s Get:29 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-lxml amd64 5.3.0-1 [1282 kB] 1078s Get:30 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-mistletoe all 1.3.0-1 [38.0 kB] 1078s Get:31 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-ply all 3.11-7 [45.4 kB] 1078s Get:32 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-phply all 1.2.6-1 [50.5 kB] 1078s Get:33 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-ruamel.yaml.clib amd64 0.2.8+ds-2 [138 kB] 1078s Get:34 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-ruamel.yaml all 0.18.6+ds-3 [126 kB] 1078s Get:35 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-simplejson amd64 3.19.2-1build2 [54.5 kB] 1078s Get:36 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-wcwidth all 0.2.13+dfsg1-1 [26.3 kB] 1078s Get:37 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-translate all 3.13.2-2 [319 kB] 1078s Get:38 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-vobject all 0.9.6.1-2 [40.6 kB] 1078s Get:39 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-xapian amd64 1.4.25-1build3 [441 kB] 1078s Get:40 http://ftpmaster.internal/ubuntu plucky/universe amd64 subversion amd64 1.14.4-2 [914 kB] 1078s Get:41 http://ftpmaster.internal/ubuntu plucky/universe amd64 translate-toolkit all 3.13.2-2 [81.0 kB] 1078s Get:42 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-iniparse all 0.5-2 [20.0 kB] 1078s Get:43 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-pycountry all 24.6.1+ds1-1 [30.0 kB] 1078s Preconfiguring packages ... 1078s Fetched 11.5 MB in 0s (45.8 MB/s) 1078s Selecting previously unselected package emacsen-common. 1078s (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 ... 75324 files and directories currently installed.) 1078s Preparing to unpack .../00-emacsen-common_3.0.5_all.deb ... 1078s Unpacking emacsen-common (3.0.5) ... 1078s Selecting previously unselected package dictionaries-common. 1078s Preparing to unpack .../01-dictionaries-common_1.29.7_all.deb ... 1078s Adding 'diversion of /usr/share/dict/words to /usr/share/dict/words.pre-dictionaries-common by dictionaries-common' 1078s Unpacking dictionaries-common (1.29.7) ... 1079s Selecting previously unselected package libgomp1:amd64. 1079s Preparing to unpack .../02-libgomp1_14.2.0-7ubuntu1_amd64.deb ... 1079s Unpacking libgomp1:amd64 (14.2.0-7ubuntu1) ... 1079s Selecting previously unselected package gettext. 1079s Preparing to unpack .../03-gettext_0.22.5-2_amd64.deb ... 1079s Unpacking gettext (0.22.5-2) ... 1079s Selecting previously unselected package hunspell-en-us. 1079s Preparing to unpack .../04-hunspell-en-us_1%3a2020.12.07-2_all.deb ... 1079s Unpacking hunspell-en-us (1:2020.12.07-2) ... 1079s Selecting previously unselected package libapr1t64:amd64. 1079s Preparing to unpack .../05-libapr1t64_1.7.2-3.2ubuntu1_amd64.deb ... 1079s Unpacking libapr1t64:amd64 (1.7.2-3.2ubuntu1) ... 1079s Selecting previously unselected package libaprutil1t64:amd64. 1079s Preparing to unpack .../06-libaprutil1t64_1.6.3-3ubuntu1_amd64.deb ... 1079s Unpacking libaprutil1t64:amd64 (1.6.3-3ubuntu1) ... 1079s Selecting previously unselected package libaspell15:amd64. 1079s Preparing to unpack .../07-libaspell15_0.60.8.1-1build1_amd64.deb ... 1079s Unpacking libaspell15:amd64 (0.60.8.1-1build1) ... 1079s Selecting previously unselected package libhunspell-1.7-0:amd64. 1079s Preparing to unpack .../08-libhunspell-1.7-0_1.7.2+really1.7.2-10build3_amd64.deb ... 1079s Unpacking libhunspell-1.7-0:amd64 (1.7.2+really1.7.2-10build3) ... 1079s Selecting previously unselected package libenchant-2-2:amd64. 1079s Preparing to unpack .../09-libenchant-2-2_2.3.3-2build2_amd64.deb ... 1079s Unpacking libenchant-2-2:amd64 (2.3.3-2build2) ... 1079s Selecting previously unselected package libexttextcat-data. 1079s Preparing to unpack .../10-libexttextcat-data_3.4.7-1build1_all.deb ... 1079s Unpacking libexttextcat-data (3.4.7-1build1) ... 1079s Selecting previously unselected package libserf-1-1:amd64. 1079s Preparing to unpack .../11-libserf-1-1_1.3.10-3ubuntu1_amd64.deb ... 1079s Unpacking libserf-1-1:amd64 (1.3.10-3ubuntu1) ... 1079s Selecting previously unselected package libutf8proc3:amd64. 1079s Preparing to unpack .../12-libutf8proc3_2.9.0-1build1_amd64.deb ... 1079s Unpacking libutf8proc3:amd64 (2.9.0-1build1) ... 1079s Selecting previously unselected package libsvn1:amd64. 1079s Preparing to unpack .../13-libsvn1_1.14.4-2_amd64.deb ... 1079s Unpacking libsvn1:amd64 (1.14.4-2) ... 1079s Selecting previously unselected package libxapian30:amd64. 1079s Preparing to unpack .../14-libxapian30_1.4.25-1_amd64.deb ... 1079s Unpacking libxapian30:amd64 (1.4.25-1) ... 1079s Selecting previously unselected package libxslt1.1:amd64. 1079s Preparing to unpack .../15-libxslt1.1_1.1.39-0exp1ubuntu1_amd64.deb ... 1079s Unpacking libxslt1.1:amd64 (1.1.39-0exp1ubuntu1) ... 1079s Selecting previously unselected package python3-aeidon. 1079s Preparing to unpack .../16-python3-aeidon_1.15-1_all.deb ... 1079s Unpacking python3-aeidon (1.15-1) ... 1079s Selecting previously unselected package python3-soupsieve. 1079s Preparing to unpack .../17-python3-soupsieve_2.6-1_all.deb ... 1079s Unpacking python3-soupsieve (2.6-1) ... 1079s Selecting previously unselected package python3-bs4. 1079s Preparing to unpack .../18-python3-bs4_4.12.3-3_all.deb ... 1079s Unpacking python3-bs4 (4.12.3-3) ... 1080s Selecting previously unselected package python3-charset-normalizer. 1080s Preparing to unpack .../19-python3-charset-normalizer_3.3.2-2_amd64.deb ... 1080s Unpacking python3-charset-normalizer (3.3.2-2) ... 1080s Selecting previously unselected package python3-cheroot. 1080s Preparing to unpack .../20-python3-cheroot_10.0.0+ds1-2_all.deb ... 1080s Unpacking python3-cheroot (10.0.0+ds1-2) ... 1080s Selecting previously unselected package python3-six. 1080s Preparing to unpack .../21-python3-six_1.16.0-7_all.deb ... 1080s Unpacking python3-six (1.16.0-7) ... 1080s Selecting previously unselected package python3-dateutil. 1080s Preparing to unpack .../22-python3-dateutil_2.9.0-2_all.deb ... 1080s Unpacking python3-dateutil (2.9.0-2) ... 1080s Selecting previously unselected package python3-diff-match-patch. 1080s Preparing to unpack .../23-python3-diff-match-patch_20230430-1_all.deb ... 1080s Unpacking python3-diff-match-patch (20230430-1) ... 1080s Selecting previously unselected package python3-enchant. 1080s Preparing to unpack .../24-python3-enchant_3.2.2-1_all.deb ... 1080s Unpacking python3-enchant (3.2.2-1) ... 1080s Selecting previously unselected package python3-rapidfuzz. 1080s Preparing to unpack .../25-python3-rapidfuzz_3.9.4+ds-1_amd64.deb ... 1080s Unpacking python3-rapidfuzz (3.9.4+ds-1) ... 1080s Selecting previously unselected package python3-levenshtein. 1080s Preparing to unpack .../26-python3-levenshtein_0.25.1-3_amd64.deb ... 1080s Unpacking python3-levenshtein (0.25.1-3) ... 1080s Selecting previously unselected package python3-lxml:amd64. 1080s Preparing to unpack .../27-python3-lxml_5.3.0-1_amd64.deb ... 1080s Unpacking python3-lxml:amd64 (5.3.0-1) ... 1080s Selecting previously unselected package python3-mistletoe. 1080s Preparing to unpack .../28-python3-mistletoe_1.3.0-1_all.deb ... 1080s Unpacking python3-mistletoe (1.3.0-1) ... 1080s Selecting previously unselected package python3-ply. 1080s Preparing to unpack .../29-python3-ply_3.11-7_all.deb ... 1080s Unpacking python3-ply (3.11-7) ... 1080s Selecting previously unselected package python3-phply. 1080s Preparing to unpack .../30-python3-phply_1.2.6-1_all.deb ... 1080s Unpacking python3-phply (1.2.6-1) ... 1080s Selecting previously unselected package python3-ruamel.yaml.clib:amd64. 1080s Preparing to unpack .../31-python3-ruamel.yaml.clib_0.2.8+ds-2_amd64.deb ... 1080s Unpacking python3-ruamel.yaml.clib:amd64 (0.2.8+ds-2) ... 1080s Selecting previously unselected package python3-ruamel.yaml. 1080s Preparing to unpack .../32-python3-ruamel.yaml_0.18.6+ds-3_all.deb ... 1080s Unpacking python3-ruamel.yaml (0.18.6+ds-3) ... 1080s Selecting previously unselected package python3-simplejson. 1080s Preparing to unpack .../33-python3-simplejson_3.19.2-1build2_amd64.deb ... 1080s Unpacking python3-simplejson (3.19.2-1build2) ... 1080s Selecting previously unselected package python3-wcwidth. 1080s Preparing to unpack .../34-python3-wcwidth_0.2.13+dfsg1-1_all.deb ... 1080s Unpacking python3-wcwidth (0.2.13+dfsg1-1) ... 1080s Selecting previously unselected package python3-translate. 1080s Preparing to unpack .../35-python3-translate_3.13.2-2_all.deb ... 1080s Unpacking python3-translate (3.13.2-2) ... 1080s Selecting previously unselected package python3-vobject. 1080s Preparing to unpack .../36-python3-vobject_0.9.6.1-2_all.deb ... 1080s Unpacking python3-vobject (0.9.6.1-2) ... 1081s Selecting previously unselected package python3-xapian. 1081s Preparing to unpack .../37-python3-xapian_1.4.25-1build3_amd64.deb ... 1081s Unpacking python3-xapian (1.4.25-1build3) ... 1081s Selecting previously unselected package subversion. 1081s Preparing to unpack .../38-subversion_1.14.4-2_amd64.deb ... 1081s Unpacking subversion (1.14.4-2) ... 1081s Selecting previously unselected package translate-toolkit. 1081s Preparing to unpack .../39-translate-toolkit_3.13.2-2_all.deb ... 1081s Unpacking translate-toolkit (3.13.2-2) ... 1081s Selecting previously unselected package python3-iniparse. 1081s Preparing to unpack .../40-python3-iniparse_0.5-2_all.deb ... 1081s Unpacking python3-iniparse (0.5-2) ... 1081s Selecting previously unselected package python3-pycountry. 1081s Preparing to unpack .../41-python3-pycountry_24.6.1+ds1-1_all.deb ... 1081s Unpacking python3-pycountry (24.6.1+ds1-1) ... 1081s Selecting previously unselected package autopkgtest-satdep. 1081s Preparing to unpack .../42-1-autopkgtest-satdep.deb ... 1081s Unpacking autopkgtest-satdep (0) ... 1081s Setting up libxapian30:amd64 (1.4.25-1) ... 1081s Setting up python3-rapidfuzz (3.9.4+ds-1) ... 1082s Setting up python3-diff-match-patch (20230430-1) ... 1082s Setting up python3-aeidon (1.15-1) ... 1082s Setting up libutf8proc3:amd64 (2.9.0-1build1) ... 1082s Setting up libaspell15:amd64 (0.60.8.1-1build1) ... 1082s Setting up python3-charset-normalizer (3.3.2-2) ... 1082s Setting up python3-ply (3.11-7) ... 1083s Setting up python3-ruamel.yaml.clib:amd64 (0.2.8+ds-2) ... 1083s Setting up libgomp1:amd64 (14.2.0-7ubuntu1) ... 1083s Setting up python3-six (1.16.0-7) ... 1083s Setting up python3-simplejson (3.19.2-1build2) ... 1083s Setting up python3-wcwidth (0.2.13+dfsg1-1) ... 1083s Setting up emacsen-common (3.0.5) ... 1083s Setting up python3-cheroot (10.0.0+ds1-2) ... 1083s Setting up python3-pycountry (24.6.1+ds1-1) ... 1084s Setting up python3-xapian (1.4.25-1build3) ... 1084s Setting up python3-ruamel.yaml (0.18.6+ds-3) ... 1084s Setting up python3-mistletoe (1.3.0-1) ... 1084s Setting up libexttextcat-data (3.4.7-1build1) ... 1084s Setting up libapr1t64:amd64 (1.7.2-3.2ubuntu1) ... 1084s Setting up libxslt1.1:amd64 (1.1.39-0exp1ubuntu1) ... 1084s Setting up python3-dateutil (2.9.0-2) ... 1085s Setting up python3-levenshtein (0.25.1-3) ... 1085s Setting up libhunspell-1.7-0:amd64 (1.7.2+really1.7.2-10build3) ... 1085s Setting up python3-soupsieve (2.6-1) ... 1085s Setting up python3-iniparse (0.5-2) ... 1085s Setting up libaprutil1t64:amd64 (1.6.3-3ubuntu1) ... 1085s Setting up python3-vobject (0.9.6.1-2) ... 1085s /usr/lib/python3/dist-packages/vobject/base.py:736: SyntaxWarning: invalid escape sequence '\-' 1085s patterns['name'] = '[a-zA-Z0-9\-_]+' 1085s /usr/lib/python3/dist-packages/vobject/base.py:1219: SyntaxWarning: invalid escape sequence '\;' 1085s s = s.replace("\\", "\\\\").replace(";", "\;").replace(",", "\,") 1085s /usr/lib/python3/dist-packages/vobject/base.py:1219: SyntaxWarning: invalid escape sequence '\,' 1085s s = s.replace("\\", "\\\\").replace(";", "\;").replace(",", "\,") 1085s /usr/lib/python3/dist-packages/vobject/hcalendar.py:1: SyntaxWarning: invalid escape sequence '\,' 1085s """ 1085s Setting up gettext (0.22.5-2) ... 1085s Setting up python3-phply (1.2.6-1) ... 1086s Setting up dictionaries-common (1.29.7) ... 1086s Setting up libserf-1-1:amd64 (1.3.10-3ubuntu1) ... 1086s Setting up python3-bs4 (4.12.3-3) ... 1087s Setting up python3-lxml:amd64 (5.3.0-1) ... 1087s Setting up hunspell-en-us (1:2020.12.07-2) ... 1087s Setting up libsvn1:amd64 (1.14.4-2) ... 1087s Setting up libenchant-2-2:amd64 (2.3.3-2build2) ... 1087s Setting up subversion (1.14.4-2) ... 1087s Setting up python3-enchant (3.2.2-1) ... 1087s Setting up python3-translate (3.13.2-2) ... 1088s Setting up translate-toolkit (3.13.2-2) ... 1088s Setting up autopkgtest-satdep (0) ... 1088s Processing triggers for man-db (2.12.1-3) ... 1089s Processing triggers for install-info (7.1.1-1) ... 1089s Processing triggers for libc-bin (2.40-1ubuntu3) ... 1089s Processing triggers for dictionaries-common (1.29.7) ... 1094s (Reading database ... 78805 files and directories currently installed.) 1094s Removing autopkgtest-satdep (0) ... 1094s autopkgtest [11:42:05]: test translate-toolkit: [----------------------- 1094s ========= SMOKE TEST: /usr/bin/android2po =========== 1094s Usage: android2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 1094s 1094s Convert Android string files to Gettext PO localization files. See: 1094s http://docs.translatehouse.org/projects/translate- 1094s toolkit/en/latest/commands/android2po.html for examples and usage 1094s instructions. 1094s 1094s Options: 1094s --version show program's version number and exit 1094s -h, --help show this help message and exit 1094s --manpage output a manpage based on the help 1094s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1094s --errorlevel=ERRORLEVEL 1094s show errorlevel as: none, message, exception, 1094s traceback 1094s -i INPUT, --input=INPUT 1094s read from INPUT in xml format 1094s -x EXCLUDE, --exclude=EXCLUDE 1094s exclude names matching EXCLUDE from input paths 1094s -o OUTPUT, --output=OUTPUT 1094s write to OUTPUT in po, pot formats 1094s -t TEMPLATE, --template=TEMPLATE 1094s read from TEMPLATE in xml format 1094s -S, --timestamp skip conversion if the output file has newer timestamp 1094s --duplicates=DUPLICATESTYLE 1094s what to do with duplicate strings (identical source 1094s text): merge, msgctxt (default: 'msgctxt') 1094s ========= SMOKE TEST: /usr/bin/build_tmdb =========== 1094s usage: build_tmdb [-h] [-d TMDB_FILE] [-s SOURCE_LANG] -t TARGET_LANG 1094s input files [input files ...] 1094s 1094s positional arguments: 1094s input files 1094s 1094s options: 1094s -h, --help show this help message and exit 1094s -d TMDB_FILE, --tmdb TMDB_FILE 1094s translation memory database file (default: tm.db) 1094s -s SOURCE_LANG, --import-source-lang SOURCE_LANG 1094s source language of translation files (default: en) 1094s -t TARGET_LANG, --import-target-lang TARGET_LANG 1094s target language of translation files 1095s ========= SMOKE TEST: /usr/bin/csv2po =========== 1095s 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] 1095s 1095s Convert Comma-Separated Value (.csv) files to Gettext PO localization files. 1095s See: http://docs.translatehouse.org/projects/translate- 1095s toolkit/en/latest/commands/csv2po.html for examples and usage instructions. 1095s 1095s Options: 1095s --version show program's version number and exit 1095s -h, --help show this help message and exit 1095s --manpage output a manpage based on the help 1095s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1095s --errorlevel=ERRORLEVEL 1095s show errorlevel as: none, message, exception, 1095s traceback 1095s -i INPUT, --input=INPUT 1095s read from INPUT in csv format 1095s -x EXCLUDE, --exclude=EXCLUDE 1095s exclude names matching EXCLUDE from input paths 1095s -o OUTPUT, --output=OUTPUT 1095s write to OUTPUT in po, pot formats 1095s -t TEMPLATE, --template=TEMPLATE 1095s read from TEMPLATE in po, pot, pot formats 1095s -S, --timestamp skip conversion if the output file has newer timestamp 1095s -P, --pot output PO Templates (.pot) rather than PO files (.po) 1095s --charset=CHARSET set charset to decode from csv files 1095s --columnorder=COLUMNORDER 1095s specify the order and position of columns 1095s (location,source,target,context) 1095s --duplicates=DUPLICATESTYLE 1095s what to do with duplicate strings (identical source 1095s text): merge, msgctxt (default: 'msgctxt') 1095s ========= SMOKE TEST: /usr/bin/csv2tbx =========== 1095s Usage: csv2tbx [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 1095s 1095s Convert Comma-Separated Value (.csv) files to a TermBase eXchange (.tbx) 1095s glossary file. See: http://docs.translatehouse.org/projects/translate- 1095s toolkit/en/latest/commands/csv2tbx.html for examples and usage instructions 1095s 1095s Options: 1095s --version show program's version number and exit 1095s -h, --help show this help message and exit 1095s --manpage output a manpage based on the help 1095s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1095s --errorlevel=ERRORLEVEL 1095s show errorlevel as: none, message, exception, 1095s traceback 1095s -i INPUT, --input=INPUT 1095s read from INPUT in csv format 1095s -x EXCLUDE, --exclude=EXCLUDE 1095s exclude names matching EXCLUDE from input paths 1095s -o OUTPUT, --output=OUTPUT 1095s write to OUTPUT in tbx format 1095s -S, --timestamp skip conversion if the output file has newer timestamp 1095s --charset=CHARSET set charset to decode from csv files 1095s --columnorder=COLUMNORDER 1095s specify the order and position of columns 1095s (comment,source,target) 1095s ========= SMOKE TEST: /usr/bin/dtd2po =========== 1095s 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] 1095s 1095s Convert a Mozilla .dtd UTF-8 localization format to a Gettext PO localization 1095s file. Uses the po and dtd modules, and the dtd2po convertor class which is in 1095s this module You can convert back to .dtd using po2dtd.py. 1095s 1095s Options: 1095s --version show program's version number and exit 1095s -h, --help show this help message and exit 1095s --manpage output a manpage based on the help 1095s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1095s --errorlevel=ERRORLEVEL 1095s show errorlevel as: none, message, exception, 1095s traceback 1095s -i INPUT, --input=INPUT 1095s read from INPUT in dtd format 1095s -x EXCLUDE, --exclude=EXCLUDE 1095s exclude names matching EXCLUDE from input paths 1095s -o OUTPUT, --output=OUTPUT 1095s write to OUTPUT in po, pot formats 1095s -t TEMPLATE, --template=TEMPLATE 1095s read from TEMPLATE in dtd format 1095s -S, --timestamp skip conversion if the output file has newer timestamp 1095s -P, --pot output PO Templates (.pot) rather than PO files (.po) 1095s --duplicates=DUPLICATESTYLE 1095s what to do with duplicate strings (identical source 1095s text): merge, msgctxt (default: 'msgctxt') 1095s ========= SMOKE TEST: /usr/bin/flatxml2po =========== 1095s Usage: flatxml2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 1095s 1095s Convert flat XML files to Gettext PO localization files. See: 1095s http://docs.translatehouse.org/projects/translate- 1095s toolkit/en/latest/commands/flatxml2po.html for examples and usage 1095s instructions. 1095s 1095s Options: 1095s --version show program's version number and exit 1095s -h, --help show this help message and exit 1095s --manpage output a manpage based on the help 1095s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1095s --errorlevel=ERRORLEVEL 1095s show errorlevel as: none, message, exception, 1095s traceback 1095s -i INPUT, --input=INPUT 1095s read from INPUT in xml format 1095s -x EXCLUDE, --exclude=EXCLUDE 1095s exclude names matching EXCLUDE from input paths 1095s -o OUTPUT, --output=OUTPUT 1095s write to OUTPUT in po, pot formats 1095s -S, --timestamp skip conversion if the output file has newer timestamp 1095s -r ROOT, --root=ROOT name of the XML root element (default: "root") 1095s -v VALUE, --value=VALUE 1095s name of the XML value element (default: "str") 1095s -k KEY, --key=KEY name of the XML key attribute (default: "key") 1095s -n NS, --namespace=NS 1095s XML namespace uri (default: None) 1095s ========= SMOKE TEST: /usr/bin/html2po =========== 1095s Usage: html2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 1095s 1095s Convert HTML files to Gettext PO localization files. See: 1095s http://docs.translatehouse.org/projects/translate- 1095s toolkit/en/latest/commands/html2po.html for examples and usage instructions. 1095s 1095s Options: 1095s --version show program's version number and exit 1095s -h, --help show this help message and exit 1095s --manpage output a manpage based on the help 1095s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1095s --errorlevel=ERRORLEVEL 1095s show errorlevel as: none, message, exception, 1095s traceback 1095s -i INPUT, --input=INPUT 1095s read from INPUT in htm, html, xhtml formats 1095s -x EXCLUDE, --exclude=EXCLUDE 1095s exclude names matching EXCLUDE from input paths 1095s -o OUTPUT, --output=OUTPUT 1095s write to OUTPUT in po, pot formats 1095s -S, --timestamp skip conversion if the output file has newer timestamp 1095s -P, --pot output PO Templates (.pot) rather than PO files (.po) 1095s --keepcomments preserve html comments as translation notes in the 1095s output 1095s --duplicates=DUPLICATESTYLE 1095s what to do with duplicate strings (identical source 1095s text): merge, msgctxt (default: 'msgctxt') 1095s --multifile=MULTIFILESTYLE 1095s how to split po/pot files (single, toplevel or 1095s onefile) 1096s ========= SMOKE TEST: /usr/bin/ical2po =========== 1096s 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] 1096s 1096s Convert iCalendar files to Gettext PO localization files. See: 1096s http://docs.translatehouse.org/projects/translate- 1096s toolkit/en/latest/commands/ical2po.html for examples and usage instructions. 1096s 1096s Options: 1096s --version show program's version number and exit 1096s -h, --help show this help message and exit 1096s --manpage output a manpage based on the help 1096s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1096s --errorlevel=ERRORLEVEL 1096s show errorlevel as: none, message, exception, 1096s traceback 1096s -i INPUT, --input=INPUT 1096s read from INPUT in ics format 1096s -x EXCLUDE, --exclude=EXCLUDE 1096s exclude names matching EXCLUDE from input paths 1096s -o OUTPUT, --output=OUTPUT 1096s write to OUTPUT in po, pot formats 1096s -t TEMPLATE, --template=TEMPLATE 1096s read from TEMPLATE in ics format 1096s -S, --timestamp skip conversion if the output file has newer timestamp 1096s -P, --pot output PO Templates (.pot) rather than PO files (.po) 1096s --duplicates=DUPLICATESTYLE 1096s what to do with duplicate strings (identical source 1096s text): merge, msgctxt (default: 'msgctxt') 1096s ========= SMOKE TEST: /usr/bin/idml2po =========== 1096s Usage: idml2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 1096s 1096s Convert IDML files to PO localization files. 1096s 1096s Options: 1096s --version show program's version number and exit 1096s -h, --help show this help message and exit 1096s --manpage output a manpage based on the help 1096s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1096s --errorlevel=ERRORLEVEL 1096s show errorlevel as: none, message, exception, 1096s traceback 1096s -i INPUT, --input=INPUT 1096s read from INPUT in idml format 1096s -x EXCLUDE, --exclude=EXCLUDE 1096s exclude names matching EXCLUDE from input paths 1096s -o OUTPUT, --output=OUTPUT 1096s write to OUTPUT in po, pot formats 1096s -S, --timestamp skip conversion if the output file has newer timestamp 1096s ========= SMOKE TEST: /usr/bin/ini2po =========== 1096s 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] 1096s 1096s Convert .ini files to Gettext PO localization files. See: 1096s http://docs.translatehouse.org/projects/translate- 1096s toolkit/en/latest/commands/ini2po.html for examples and usage instructions. 1096s 1096s Options: 1096s --version show program's version number and exit 1096s -h, --help show this help message and exit 1096s --manpage output a manpage based on the help 1096s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1096s --errorlevel=ERRORLEVEL 1096s show errorlevel as: none, message, exception, 1096s traceback 1096s -i INPUT, --input=INPUT 1096s read from INPUT in ini, isl, iss formats 1096s -x EXCLUDE, --exclude=EXCLUDE 1096s exclude names matching EXCLUDE from input paths 1096s -o OUTPUT, --output=OUTPUT 1096s write to OUTPUT in po, pot formats 1096s -t TEMPLATE, --template=TEMPLATE 1096s read from TEMPLATE in ini, isl, iss formats 1096s -S, --timestamp skip conversion if the output file has newer timestamp 1096s -P, --pot output PO Templates (.pot) rather than PO files (.po) 1096s --duplicates=DUPLICATESTYLE 1096s what to do with duplicate strings (identical source 1096s text): merge, msgctxt (default: 'msgctxt') 1096s ========= SMOKE TEST: /usr/bin/json2po =========== 1096s 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] 1096s 1096s Convert JSON files to Gettext PO localization files. See: 1096s http://docs.translatehouse.org/projects/translate- 1096s toolkit/en/latest/commands/json2po.html for examples and usage instructions. 1096s 1096s Options: 1096s --version show program's version number and exit 1096s -h, --help show this help message and exit 1096s --manpage output a manpage based on the help 1096s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1096s --errorlevel=ERRORLEVEL 1096s show errorlevel as: none, message, exception, 1096s traceback 1096s -i INPUT, --input=INPUT 1096s read from INPUT in json format 1096s -x EXCLUDE, --exclude=EXCLUDE 1096s exclude names matching EXCLUDE from input paths 1096s -o OUTPUT, --output=OUTPUT 1096s write to OUTPUT in po, pot formats 1096s -t TEMPLATE, --template=TEMPLATE 1096s read from TEMPLATE in json format 1096s -S, --timestamp skip conversion if the output file has newer timestamp 1096s -P, --pot output PO Templates (.pot) rather than PO files (.po) 1096s --filter=FILTER leaves to extract e.g. 'name,desc': (default: extract 1096s everything) 1096s --duplicates=DUPLICATESTYLE 1096s what to do with duplicate strings (identical source 1096s text): merge, msgctxt (default: 'msgctxt') 1096s ========= SMOKE TEST: /usr/bin/md2po =========== 1097s Usage: md2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 1097s 1097s Convert Markdown files to Gettext PO localization files. See: 1097s http://docs.translatehouse.org/projects/translate- 1097s toolkit/en/latest/commands/md2po.html for examples and usage instructions. 1097s 1097s Options: 1097s --version show program's version number and exit 1097s -h, --help show this help message and exit 1097s --manpage output a manpage based on the help 1097s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1097s --errorlevel=ERRORLEVEL 1097s show errorlevel as: none, message, exception, 1097s traceback 1097s -i INPUT, --input=INPUT 1097s read from INPUT in markdown, md, text, txt formats 1097s -x EXCLUDE, --exclude=EXCLUDE 1097s exclude names matching EXCLUDE from input paths 1097s -o OUTPUT, --output=OUTPUT 1097s write to OUTPUT in po, pot formats 1097s -S, --timestamp skip conversion if the output file has newer timestamp 1097s -P, --pot output PO Templates (.pot) rather than PO files (.po) 1097s --duplicates=DUPLICATESTYLE 1097s what to do with duplicate strings (identical source 1097s text): merge, msgctxt (default: 'msgctxt') 1097s --multifile=MULTIFILESTYLE 1097s how to split po/pot files (single, toplevel or 1097s onefile) 1097s ========= SMOKE TEST: /usr/bin/moz2po =========== 1097s 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] 1097s 1097s Convert Mozilla .dtd and .properties files to Gettext PO localization files. 1097s See: http://docs.translatehouse.org/projects/translate- 1097s toolkit/en/latest/commands/moz2po.html for examples and usage instructions. 1097s 1097s Options: 1097s --version show program's version number and exit 1097s -h, --help show this help message and exit 1097s --manpage output a manpage based on the help 1097s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1097s --errorlevel=ERRORLEVEL 1097s show errorlevel as: none, message, exception, 1097s traceback 1097s -i INPUT, --input=INPUT 1097s read from INPUT in *, dtd, inc, ini, it, js, lang, 1097s manifest, properties, rdf formats 1097s -x EXCLUDE, --exclude=EXCLUDE 1097s exclude names matching EXCLUDE from input paths 1097s -o OUTPUT, --output=OUTPUT 1097s write to OUTPUT in *, dtd.po, dtd.pot, inc.po, 1097s inc.pot, ini.po, ini.pot, it.po, it.pot, js, lang.po, 1097s lang.pot, manifest, properties.po, properties.pot, rdf 1097s formats 1097s -t TEMPLATE, --template=TEMPLATE 1097s read from TEMPLATE in *, dtd, inc, ini, it, js, lang, 1097s manifest, properties, rdf formats 1097s -S, --timestamp skip conversion if the output file has newer timestamp 1097s -P, --pot output PO Templates (.pot) rather than PO files (.po) 1097s --duplicates=DUPLICATESTYLE 1097s what to do with duplicate strings (identical source 1097s text): merge, msgctxt (default: 'msgctxt') 1098s ========= SMOKE TEST: /usr/bin/mozlang2po =========== 1098s Usage: mozlang2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 1098s 1098s Convert Mozilla .lang files to Gettext PO localization files. 1098s 1098s Options: 1098s --version show program's version number and exit 1098s -h, --help show this help message and exit 1098s --manpage output a manpage based on the help 1098s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1098s --errorlevel=ERRORLEVEL 1098s show errorlevel as: none, message, exception, 1098s traceback 1098s -i INPUT, --input=INPUT 1098s read from INPUT in lang format 1098s -x EXCLUDE, --exclude=EXCLUDE 1098s exclude names matching EXCLUDE from input paths 1098s -o OUTPUT, --output=OUTPUT 1098s write to OUTPUT in po, pot formats 1098s -S, --timestamp skip conversion if the output file has newer timestamp 1098s -P, --pot output PO Templates (.pot) rather than PO files (.po) 1098s --encoding=ENCODING The encoding of the input file (default: UTF-8) 1098s --duplicates=DUPLICATESTYLE 1098s what to do with duplicate strings (identical source 1098s text): merge, msgctxt (default: 'msgctxt') 1098s ========= SMOKE TEST: /usr/bin/msghack =========== 1098s Usage: /usr/bin/msghack [OPTION] file.po [ref.po] 1098s This program can be used to alter .po files in ways no sane mind would think about. 1098s -o result will be written to FILE 1098s --invert invert a po file by switching msgid and msgstr 1098s --master join any number of files in a master-formatted catalog 1098s --empty empty the contents of the .po file, creating a .pot 1098s --append append entries from ref.po that don't exist in file.po 1098s 1098s Note: It is just a replacement of msghack for backward support. 1098s 1098s ========= SMOKE TEST: /usr/bin/odf2xliff =========== 1098s Usage: odf2xliff [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 1098s 1098s Convert OpenDocument (ODF) files to XLIFF localization files. See: 1098s http://docs.translatehouse.org/projects/translate- 1098s toolkit/en/latest/commands/odf2xliff.html for examples and usage instructions. 1098s 1098s Options: 1098s --version show program's version number and exit 1098s -h, --help show this help message and exit 1098s --manpage output a manpage based on the help 1098s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1098s --errorlevel=ERRORLEVEL 1098s show errorlevel as: none, message, exception, 1098s traceback 1098s -i INPUT, --input=INPUT 1098s read from INPUT in odc, odf, odg, odi, odm, odp, ods, 1098s odt, otc, otf, otg, oth, oti, otp, ots, ott, sxw 1098s formats 1098s -x EXCLUDE, --exclude=EXCLUDE 1098s exclude names matching EXCLUDE from input paths 1098s -o OUTPUT, --output=OUTPUT 1098s write to OUTPUT in xlf, xliff formats 1098s -S, --timestamp skip conversion if the output file has newer timestamp 1098s ========= SMOKE TEST: /usr/bin/oo2po =========== 1098s Usage: oo2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 1098s 1098s Convert an OpenOffice.org (SDF) localization file to Gettext PO localization 1098s files. See: http://docs.translatehouse.org/projects/translate- 1098s toolkit/en/latest/commands/oo2po.html for examples and usage instructions. 1098s 1098s Options: 1098s --version show program's version number and exit 1098s -h, --help show this help message and exit 1098s --manpage output a manpage based on the help 1098s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1098s --errorlevel=ERRORLEVEL 1098s show errorlevel as: none, message, exception, 1098s traceback 1098s -i INPUT, --input=INPUT 1098s read from INPUT in oo, sdf formats 1098s -x EXCLUDE, --exclude=EXCLUDE 1098s exclude names matching EXCLUDE from input paths 1098s -o OUTPUT, --output=OUTPUT 1098s write to OUTPUT in po, pot formats 1098s -S, --timestamp skip conversion if the output file has newer timestamp 1098s -P, --pot output PO Templates (.pot) rather than PO files (.po) 1098s -l LANG, --language=LANG 1098s set target language to extract from oo file (e.g. af- 1098s ZA) 1098s --source-language=LANG 1098s set source language code (default en-US) 1098s --nonrecursiveinput don't treat the input oo as a recursive store 1098s --duplicates=DUPLICATESTYLE 1098s what to do with duplicate strings (identical source 1098s text): merge, msgctxt (default: 'msgctxt') 1098s --multifile=MULTIFILESTYLE 1098s how to split po/pot files (single, toplevel or 1098s onefile) 1098s ========= SMOKE TEST: /usr/bin/oo2xliff =========== 1098s Usage: oo2xliff [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 1098s 1098s Convert an OpenOffice.org (SDF) localization file to XLIFF localization 1098s files. See: http://docs.translatehouse.org/projects/translate- 1098s toolkit/en/latest/commands/oo2po.html for examples and usage instructions. 1098s 1098s Options: 1098s --version show program's version number and exit 1098s -h, --help show this help message and exit 1098s --manpage output a manpage based on the help 1098s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1098s --errorlevel=ERRORLEVEL 1098s show errorlevel as: none, message, exception, 1098s traceback 1098s -i INPUT, --input=INPUT 1098s read from INPUT in oo, sdf formats 1098s -x EXCLUDE, --exclude=EXCLUDE 1098s exclude names matching EXCLUDE from input paths 1098s -o OUTPUT, --output=OUTPUT 1098s write to OUTPUT in xlf, xliff formats 1098s -S, --timestamp skip conversion if the output file has newer timestamp 1098s -l LANG, --language=LANG 1098s set target language to extract from oo file (e.g. af- 1098s ZA) 1098s --source-language=LANG 1098s set source language code (default en-US) 1098s --nonrecursiveinput don't treat the input oo as a recursive store 1098s --duplicates=DUPLICATESTYLE 1098s what to do with duplicate strings (identical source 1098s text): merge, msgctxt (default: 'msgctxt') 1098s --multifile=MULTIFILESTYLE 1098s how to split po/pot files (single, toplevel or 1098s onefile) 1098s ========= SMOKE TEST: /usr/bin/php2po =========== 1098s 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] 1098s 1098s Convert PHP localization files to Gettext PO localization files. See: 1098s http://docs.translatehouse.org/projects/translate- 1098s toolkit/en/latest/commands/php2po.html for examples and usage instructions. 1098s 1098s Options: 1098s --version show program's version number and exit 1098s -h, --help show this help message and exit 1098s --manpage output a manpage based on the help 1098s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1098s --errorlevel=ERRORLEVEL 1098s show errorlevel as: none, message, exception, 1098s traceback 1098s -i INPUT, --input=INPUT 1098s read from INPUT in html, php formats 1098s -x EXCLUDE, --exclude=EXCLUDE 1098s exclude names matching EXCLUDE from input paths 1098s -o OUTPUT, --output=OUTPUT 1098s write to OUTPUT in po, pot formats 1098s -t TEMPLATE, --template=TEMPLATE 1098s read from TEMPLATE in html, php formats 1098s -S, --timestamp skip conversion if the output file has newer timestamp 1098s -P, --pot output PO Templates (.pot) rather than PO files (.po) 1098s --duplicates=DUPLICATESTYLE 1098s what to do with duplicate strings (identical source 1098s text): merge, msgctxt (default: 'msgctxt') 1099s ========= SMOKE TEST: /usr/bin/phppo2pypo =========== 1099s Usage: phppo2pypo [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 1099s 1099s Convert PHP format .po files to Python format .po files. 1099s 1099s Options: 1099s --version show program's version number and exit 1099s -h, --help show this help message and exit 1099s --manpage output a manpage based on the help 1099s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1099s --errorlevel=ERRORLEVEL 1099s show errorlevel as: none, message, exception, 1099s traceback 1099s -i INPUT, --input=INPUT 1099s read from INPUT in po, pot formats 1099s -x EXCLUDE, --exclude=EXCLUDE 1099s exclude names matching EXCLUDE from input paths 1099s -o OUTPUT, --output=OUTPUT 1099s write to OUTPUT in po, pot formats 1099s -S, --timestamp skip conversion if the output file has newer timestamp 1099s ========= SMOKE TEST: /usr/bin/po2csv =========== 1099s Usage: po2csv [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 1099s 1099s Convert Gettext PO localization files to Comma-Separated Value (.csv) files. 1099s See: http://docs.translatehouse.org/projects/translate- 1099s toolkit/en/latest/commands/csv2po.html for examples and usage instructions. 1099s 1099s Options: 1099s --version show program's version number and exit 1099s -h, --help show this help message and exit 1099s --manpage output a manpage based on the help 1099s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1099s --errorlevel=ERRORLEVEL 1099s show errorlevel as: none, message, exception, 1099s traceback 1099s -i INPUT, --input=INPUT 1099s read from INPUT in po, pot formats 1099s -x EXCLUDE, --exclude=EXCLUDE 1099s exclude names matching EXCLUDE from input paths 1099s -o OUTPUT, --output=OUTPUT 1099s write to OUTPUT in csv format 1099s -S, --timestamp skip conversion if the output file has newer timestamp 1099s --columnorder=COLUMNORDER 1099s specify the order and position of columns 1099s (location,source,target,context) 1099s ========= SMOKE TEST: /usr/bin/po2dtd =========== 1099s Usage: po2dtd [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 1099s 1099s Converts a Gettext PO file to a UTF-8 encoded Mozilla .dtd file. .. note: 1099s Conversion is either done using a template plus PO file or just using the 1099s .po file. 1099s 1099s Options: 1099s --version show program's version number and exit 1099s -h, --help show this help message and exit 1099s --manpage output a manpage based on the help 1099s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1099s --errorlevel=ERRORLEVEL 1099s show errorlevel as: none, message, exception, 1099s traceback 1099s -i INPUT, --input=INPUT 1099s read from INPUT in po, pot formats 1099s -x EXCLUDE, --exclude=EXCLUDE 1099s exclude names matching EXCLUDE from input paths 1099s -o OUTPUT, --output=OUTPUT 1099s write to OUTPUT in dtd format 1099s -t TEMPLATE, --template=TEMPLATE 1099s read from TEMPLATE in dtd format 1099s -S, --timestamp skip conversion if the output file has newer timestamp 1099s --threshold=PERCENT only convert files where the translation completion is 1099s above PERCENT 1099s --fuzzy use translations marked fuzzy 1099s --nofuzzy don't use translations marked fuzzy (default) 1099s --removeuntranslated remove untranslated strings from output 1099s ========= SMOKE TEST: /usr/bin/po2flatxml =========== 1099s Usage: po2flatxml [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 1099s 1099s Convert Gettext PO localization files to flat XML files. See: 1099s http://docs.translatehouse.org/projects/translate- 1099s toolkit/en/latest/commands/flatxml2po.html for examples and usage 1099s instructions. 1099s 1099s Options: 1099s --version show program's version number and exit 1099s -h, --help show this help message and exit 1099s --manpage output a manpage based on the help 1099s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1099s --errorlevel=ERRORLEVEL 1099s show errorlevel as: none, message, exception, 1099s traceback 1099s -i INPUT, --input=INPUT 1099s read from INPUT in po, pot formats 1099s -x EXCLUDE, --exclude=EXCLUDE 1099s exclude names matching EXCLUDE from input paths 1099s -o OUTPUT, --output=OUTPUT 1099s write to OUTPUT in xml format 1099s -t TEMPLATE, --template=TEMPLATE 1099s read from TEMPLATE in xml format 1099s -S, --timestamp skip conversion if the output file has newer timestamp 1099s -r ROOT, --root=ROOT name of the XML root element (default: "root") 1099s -v VALUE, --value=VALUE 1099s name of the XML value element (default: "str") 1099s -k KEY, --key=KEY name of the XML key attribute (default: "key") 1099s -n NS, --namespace=NS 1099s XML namespace uri (default: None) 1099s -w INDENT, --indent=INDENT 1099s indent width in spaces, 0 for no indent (default: 2) 1099s ========= SMOKE TEST: /usr/bin/po2html =========== 1100s Usage: po2html [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 1100s 1100s Translate HTML files using Gettext PO localization files. See: 1100s http://docs.translatehouse.org/projects/translate- 1100s toolkit/en/latest/commands/html2po.html for examples and usage instructions. 1100s 1100s Options: 1100s --version show program's version number and exit 1100s -h, --help show this help message and exit 1100s --manpage output a manpage based on the help 1100s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1100s --errorlevel=ERRORLEVEL 1100s show errorlevel as: none, message, exception, 1100s traceback 1100s -i INPUT, --input=INPUT 1100s read from INPUT in po, pot formats 1100s -x EXCLUDE, --exclude=EXCLUDE 1100s exclude names matching EXCLUDE from input paths 1100s -o OUTPUT, --output=OUTPUT 1100s write to OUTPUT in htm, html, xhtml formats 1100s -t TEMPLATE, --template=TEMPLATE 1100s read from TEMPLATE in htm, html, xhtml formats 1100s -S, --timestamp skip conversion if the output file has newer timestamp 1100s --threshold=PERCENT only convert files where the translation completion is 1100s above PERCENT 1100s --fuzzy use translations marked fuzzy 1100s --nofuzzy don't use translations marked fuzzy (default) 1100s ========= SMOKE TEST: /usr/bin/po2ical =========== 1100s Usage: po2ical [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 1100s 1100s Convert Gettext PO localization files to iCalendar files. See: 1100s http://docs.translatehouse.org/projects/translate- 1100s toolkit/en/latest/commands/ical2po.html for examples and usage instructions. 1100s 1100s Options: 1100s --version show program's version number and exit 1100s -h, --help show this help message and exit 1100s --manpage output a manpage based on the help 1100s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1100s --errorlevel=ERRORLEVEL 1100s show errorlevel as: none, message, exception, 1100s traceback 1100s -i INPUT, --input=INPUT 1100s read from INPUT in po, pot formats 1100s -x EXCLUDE, --exclude=EXCLUDE 1100s exclude names matching EXCLUDE from input paths 1100s -o OUTPUT, --output=OUTPUT 1100s write to OUTPUT in ics format 1100s -t TEMPLATE, --template=TEMPLATE 1100s read from TEMPLATE in ics format 1100s -S, --timestamp skip conversion if the output file has newer timestamp 1100s --threshold=PERCENT only convert files where the translation completion is 1100s above PERCENT 1100s --fuzzy use translations marked fuzzy 1100s --nofuzzy don't use translations marked fuzzy (default) 1100s ========= SMOKE TEST: /usr/bin/po2idml =========== 1100s Usage: po2idml [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 1100s 1100s Takes an IDML template file and a PO file containing translations of strings 1100s in the IDML template. It creates a new IDML file using the translations of the 1100s PO file. 1100s 1100s Options: 1100s --version show program's version number and exit 1100s -h, --help show this help message and exit 1100s --manpage output a manpage based on the help 1100s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1100s --errorlevel=ERRORLEVEL 1100s show errorlevel as: none, message, exception, 1100s traceback 1100s -i INPUT, --input=INPUT 1100s read from INPUT in po, pot formats 1100s -x EXCLUDE, --exclude=EXCLUDE 1100s exclude names matching EXCLUDE from input paths 1100s -o OUTPUT, --output=OUTPUT 1100s write to OUTPUT in idml format 1100s -t TEMPLATE, --template=TEMPLATE 1100s read from TEMPLATE in idml format 1100s -S, --timestamp skip conversion if the output file has newer timestamp 1100s ========= SMOKE TEST: /usr/bin/po2ini =========== 1100s Usage: po2ini [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 1100s 1100s Convert Gettext PO localization files to .ini files. See: 1100s http://docs.translatehouse.org/projects/translate- 1100s toolkit/en/latest/commands/ini2po.html for examples and usage instructions. 1100s 1100s Options: 1100s --version show program's version number and exit 1100s -h, --help show this help message and exit 1100s --manpage output a manpage based on the help 1100s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1100s --errorlevel=ERRORLEVEL 1100s show errorlevel as: none, message, exception, 1100s traceback 1100s -i INPUT, --input=INPUT 1100s read from INPUT in po, pot formats 1100s -x EXCLUDE, --exclude=EXCLUDE 1100s exclude names matching EXCLUDE from input paths 1100s -o OUTPUT, --output=OUTPUT 1100s write to OUTPUT in ini, isl formats 1100s -t TEMPLATE, --template=TEMPLATE 1100s read from TEMPLATE in ini, isl formats 1100s -S, --timestamp skip conversion if the output file has newer timestamp 1100s --threshold=PERCENT only convert files where the translation completion is 1100s above PERCENT 1100s --fuzzy use translations marked fuzzy 1100s --nofuzzy don't use translations marked fuzzy (default) 1100s ========= SMOKE TEST: /usr/bin/po2json =========== 1100s Usage: po2json [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 1100s 1100s Convert Gettext PO localization files to JSON files. See: 1100s http://docs.translatehouse.org/projects/translate- 1100s toolkit/en/latest/commands/json2po.html for examples and usage instructions. 1100s 1100s Options: 1100s --version show program's version number and exit 1100s -h, --help show this help message and exit 1100s --manpage output a manpage based on the help 1100s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1100s --errorlevel=ERRORLEVEL 1100s show errorlevel as: none, message, exception, 1100s traceback 1100s -i INPUT, --input=INPUT 1100s read from INPUT in po, pot formats 1100s -x EXCLUDE, --exclude=EXCLUDE 1100s exclude names matching EXCLUDE from input paths 1100s -o OUTPUT, --output=OUTPUT 1100s write to OUTPUT in json format 1100s -t TEMPLATE, --template=TEMPLATE 1100s read from TEMPLATE in json format 1100s -S, --timestamp skip conversion if the output file has newer timestamp 1100s --threshold=PERCENT only convert files where the translation completion is 1100s above PERCENT 1100s --fuzzy use translations marked fuzzy 1100s --nofuzzy don't use translations marked fuzzy (default) 1100s --removeuntranslated remove untranslated strings from output 1100s ========= SMOKE TEST: /usr/bin/po2md =========== 1101s Usage: po2md [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 1101s 1101s Translate Markdown files using Gettext PO localization files. See: 1101s http://docs.translatehouse.org/projects/translate- 1101s toolkit/en/latest/commands/md2po.html for examples and usage instructions. 1101s 1101s Options: 1101s --version show program's version number and exit 1101s -h, --help show this help message and exit 1101s --manpage output a manpage based on the help 1101s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1101s --errorlevel=ERRORLEVEL 1101s show errorlevel as: none, message, exception, 1101s traceback 1101s -i INPUT, --input=INPUT 1101s read from INPUT in po, pot formats 1101s -x EXCLUDE, --exclude=EXCLUDE 1101s exclude names matching EXCLUDE from input paths 1101s -o OUTPUT, --output=OUTPUT 1101s write to OUTPUT in markdown, md, text, txt formats 1101s -t TEMPLATE, --template=TEMPLATE 1101s read from TEMPLATE in markdown, md, text, txt formats 1101s -S, --timestamp skip conversion if the output file has newer timestamp 1101s -m MAXLENGTH, --maxlinelength=MAXLENGTH 1101s reflow (word wrap) the output to the given maximum 1101s line length. set to 0 to disable 1101s --threshold=PERCENT only convert files where the translation completion is 1101s above PERCENT 1101s --fuzzy use translations marked fuzzy 1101s --nofuzzy don't use translations marked fuzzy (default) 1101s ========= SMOKE TEST: /usr/bin/po2moz =========== 1101s Usage: po2moz [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 1101s 1101s Convert Gettext PO localization files to Mozilla .dtd and .properties files. 1101s See: http://docs.translatehouse.org/projects/translate- 1101s toolkit/en/latest/commands/moz2po.html for examples and usage instructions. 1101s 1101s Options: 1101s --version show program's version number and exit 1101s -h, --help show this help message and exit 1101s --manpage output a manpage based on the help 1101s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1101s --errorlevel=ERRORLEVEL 1101s show errorlevel as: none, message, exception, 1101s traceback 1101s -i INPUT, --input=INPUT 1101s read from INPUT in *, dtd.po, dtd.pot, inc.po, 1101s inc.pot, ini.po, ini.pot, it.po, it.pot, js, lang.po, 1101s lang.pot, manifest, properties.po, properties.pot, rdf 1101s formats 1101s -x EXCLUDE, --exclude=EXCLUDE 1101s exclude names matching EXCLUDE from input paths 1101s -o OUTPUT, --output=OUTPUT 1101s write to OUTPUT in *, dtd, inc, ini, it, js, lang, 1101s manifest, properties, rdf formats 1101s -t TEMPLATE, --template=TEMPLATE 1101s read from TEMPLATE in *, dtd, inc, ini, it, js, lang, 1101s manifest, properties, rdf formats 1101s -S, --timestamp skip conversion if the output file has newer timestamp 1101s -l LOCALE, --locale=LOCALE 1101s set output locale (required as this sets the directory 1101s names) 1101s --threshold=PERCENT only convert files where the translation completion is 1101s above PERCENT 1101s --fuzzy use translations marked fuzzy 1101s --nofuzzy don't use translations marked fuzzy (default) 1101s --removeuntranslated remove untranslated strings from output 1101s ========= SMOKE TEST: /usr/bin/po2mozlang =========== 1102s Usage: po2mozlang [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 1102s 1102s Convert Gettext PO localization files to Mozilla .lang files. 1102s 1102s Options: 1102s --version show program's version number and exit 1102s -h, --help show this help message and exit 1102s --manpage output a manpage based on the help 1102s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1102s --errorlevel=ERRORLEVEL 1102s show errorlevel as: none, message, exception, 1102s traceback 1102s -i INPUT, --input=INPUT 1102s read from INPUT in po, pot formats 1102s -x EXCLUDE, --exclude=EXCLUDE 1102s exclude names matching EXCLUDE from input paths 1102s -o OUTPUT, --output=OUTPUT 1102s write to OUTPUT in lang format 1102s -t TEMPLATE, --template=TEMPLATE 1102s read from TEMPLATE in lang format 1102s -S, --timestamp skip conversion if the output file has newer timestamp 1102s --mark-active mark the file as active 1102s --threshold=PERCENT only convert files where the translation completion is 1102s above PERCENT 1102s --fuzzy use translations marked fuzzy 1102s --nofuzzy don't use translations marked fuzzy (default) 1102s ========= SMOKE TEST: /usr/bin/po2oo =========== 1102s Usage: po2oo [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 1102s 1102s Convert Gettext PO localization files to an OpenOffice.org (SDF) localization 1102s file. See: http://docs.translatehouse.org/projects/translate- 1102s toolkit/en/latest/commands/oo2po.html for examples and usage instructions. 1102s 1102s Options: 1102s --version show program's version number and exit 1102s -h, --help show this help message and exit 1102s --manpage output a manpage based on the help 1102s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1102s --errorlevel=ERRORLEVEL 1102s show errorlevel as: none, message, exception, 1102s traceback 1102s -i INPUT, --input=INPUT 1102s read from INPUT in po, pot, xlf, xliff formats 1102s -x EXCLUDE, --exclude=EXCLUDE 1102s exclude names matching EXCLUDE from input paths 1102s -o OUTPUT, --output=OUTPUT 1102s write to OUTPUT in oo, sdf formats 1102s -t TEMPLATE, --template=TEMPLATE 1102s read from TEMPLATE in oo, sdf formats 1102s -S, --timestamp skip conversion if the output file has newer timestamp 1102s -l LANG, --language=LANG 1102s set target language code (e.g. af-ZA) [required] 1102s --source-language=LANG 1102s set source language code (default en-US) 1102s -T, --keeptimestamp don't change the timestamps of the strings 1102s --nonrecursiveoutput don't treat the output oo as a recursive store 1102s --nonrecursivetemplate 1102s don't treat the template oo as a recursive store 1102s --skipsource don't output the source language, but fallback to it 1102s where needed 1102s --filteraction=ACTION 1102s action on pofilter failure: none (default), warn, 1102s exclude-serious, exclude-all 1102s --threshold=PERCENT only convert files where the translation completion is 1102s above PERCENT 1102s --fuzzy use translations marked fuzzy 1102s --nofuzzy don't use translations marked fuzzy (default) 1102s --multifile=MULTIFILESTYLE 1102s how to split po/pot files (single, toplevel or 1102s onefile) 1102s ========= SMOKE TEST: /usr/bin/po2php =========== 1102s Usage: po2php [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 1102s 1102s Convert Gettext PO localization files to PHP localization files. See: 1102s http://docs.translatehouse.org/projects/translate- 1102s toolkit/en/latest/commands/php2po.html for examples and usage instructions. 1102s 1102s Options: 1102s --version show program's version number and exit 1102s -h, --help show this help message and exit 1102s --manpage output a manpage based on the help 1102s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1102s --errorlevel=ERRORLEVEL 1102s show errorlevel as: none, message, exception, 1102s traceback 1102s -i INPUT, --input=INPUT 1102s read from INPUT in po, pot formats 1102s -x EXCLUDE, --exclude=EXCLUDE 1102s exclude names matching EXCLUDE from input paths 1102s -o OUTPUT, --output=OUTPUT 1102s write to OUTPUT in html, php formats 1102s -t TEMPLATE, --template=TEMPLATE 1102s read from TEMPLATE in html, php formats 1102s -S, --timestamp skip conversion if the output file has newer timestamp 1102s --threshold=PERCENT only convert files where the translation completion is 1102s above PERCENT 1102s --fuzzy use translations marked fuzzy 1102s --nofuzzy don't use translations marked fuzzy (default) 1102s ========= SMOKE TEST: /usr/bin/po2prop =========== 1102s Usage: po2prop [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 1102s 1102s Convert Gettext PO localization files to Java/Mozilla .properties files. 1102s See: http://docs.translatehouse.org/projects/translate- 1102s toolkit/en/latest/commands/prop2po.html for examples and usage instructions. 1102s 1102s Options: 1102s --version show program's version number and exit 1102s -h, --help show this help message and exit 1102s --manpage output a manpage based on the help 1102s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1102s --errorlevel=ERRORLEVEL 1102s show errorlevel as: none, message, exception, 1102s traceback 1102s -i INPUT, --input=INPUT 1102s read from INPUT in po, pot formats 1102s -x EXCLUDE, --exclude=EXCLUDE 1102s exclude names matching EXCLUDE from input paths 1102s -o OUTPUT, --output=OUTPUT 1102s write to OUTPUT in lang, properties, strings formats 1102s -t TEMPLATE, --template=TEMPLATE 1102s read from TEMPLATE in lang, properties, strings 1102s formats 1102s -S, --timestamp skip conversion if the output file has newer timestamp 1102s --personality=TYPE override the input file format: java, java-utf8, java- 1102s utf16, xwiki, flex, mozilla, gaia, gwt, skype, 1102s strings, strings-utf8, joomla (for .properties files, 1102s default: java) 1102s --encoding=ENCODING override the encoding set by the personality 1102s --threshold=PERCENT only convert files where the translation completion is 1102s above PERCENT 1102s --fuzzy use translations marked fuzzy 1102s --nofuzzy don't use translations marked fuzzy (default) 1102s --removeuntranslated remove untranslated strings from output 1102s ========= SMOKE TEST: /usr/bin/po2rc =========== 1102s Usage: po2rc [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 1102s 1102s Convert Gettext PO localization files back to Windows Resource (.rc) files. 1102s See: http://docs.translatehouse.org/projects/translate- 1102s toolkit/en/latest/commands/rc2po.html for examples and usage instructions. 1102s 1102s Options: 1102s --version show program's version number and exit 1102s -h, --help show this help message and exit 1102s --manpage output a manpage based on the help 1102s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1102s --errorlevel=ERRORLEVEL 1102s show errorlevel as: none, message, exception, 1102s traceback 1102s -i INPUT, --input=INPUT 1102s read from INPUT in po, pot formats 1102s -x EXCLUDE, --exclude=EXCLUDE 1102s exclude names matching EXCLUDE from input paths 1102s -o OUTPUT, --output=OUTPUT 1102s write to OUTPUT in rc format 1102s -t TEMPLATE, --template=TEMPLATE 1102s read from TEMPLATE in rc format 1102s -S, --timestamp skip conversion if the output file has newer timestamp 1102s --charset=CHARSET charset to use to decode the RC files (default: utf-8) 1102s -l LANG, --lang=LANG LANG entry 1102s --sublang=SUBLANG SUBLANG entry (default: SUBLANG_DEFAULT) 1102s --threshold=PERCENT only convert files where the translation completion is 1102s above PERCENT 1102s --fuzzy use translations marked fuzzy 1102s --nofuzzy don't use translations marked fuzzy (default) 1103s ========= SMOKE TEST: /usr/bin/po2resx =========== 1103s Usage: po2resx [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 1103s 1103s Convert Gettext PO localisation files to .Net Resource (.resx) files. See: 1103s http://docs.translatehouse.org/projects/translate- 1103s toolkit/en/latest/commands/resx2po.html for examples and usage instructions. 1103s 1103s Options: 1103s --version show program's version number and exit 1103s -h, --help show this help message and exit 1103s --manpage output a manpage based on the help 1103s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1103s --errorlevel=ERRORLEVEL 1103s show errorlevel as: none, message, exception, 1103s traceback 1103s -i INPUT, --input=INPUT 1103s read from INPUT in po, pot formats 1103s -x EXCLUDE, --exclude=EXCLUDE 1103s exclude names matching EXCLUDE from input paths 1103s -o OUTPUT, --output=OUTPUT 1103s write to OUTPUT in resx format 1103s -t TEMPLATE, --template=TEMPLATE 1103s read from TEMPLATE in resx format 1103s -S, --timestamp skip conversion if the output file has newer timestamp 1103s --fuzzy use translations marked fuzzy 1103s --nofuzzy don't use translations marked fuzzy (default) 1103s ========= SMOKE TEST: /usr/bin/po2sub =========== 1103s Usage: po2sub [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 1103s 1103s Convert Gettext PO localization files to subtitle files. See: 1103s http://docs.translatehouse.org/projects/translate- 1103s toolkit/en/latest/commands/sub2po.html for examples and usage instructions. 1103s 1103s Options: 1103s --version show program's version number and exit 1103s -h, --help show this help message and exit 1103s --manpage output a manpage based on the help 1103s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1103s --errorlevel=ERRORLEVEL 1103s show errorlevel as: none, message, exception, 1103s traceback 1103s -i INPUT, --input=INPUT 1103s read from INPUT in po, pot formats 1103s -x EXCLUDE, --exclude=EXCLUDE 1103s exclude names matching EXCLUDE from input paths 1103s -o OUTPUT, --output=OUTPUT 1103s write to OUTPUT in ass, srt, ssa, sub formats 1103s -t TEMPLATE, --template=TEMPLATE 1103s read from TEMPLATE in ass, srt, ssa, sub formats 1103s -S, --timestamp skip conversion if the output file has newer timestamp 1103s --threshold=PERCENT only convert files where the translation completion is 1103s above PERCENT 1103s --fuzzy use translations marked fuzzy 1103s --nofuzzy don't use translations marked fuzzy (default) 1103s ========= SMOKE TEST: /usr/bin/po2symb =========== 1103s Usage: po2symb [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 1103s 1103s Convert Gettext PO localization files to Symbian translation files. See: 1103s http://docs.translatehouse.org/projects/translate- 1103s toolkit/en/latest/commands/symb2po.html for examples and usage instructions. 1103s 1103s Options: 1103s --version show program's version number and exit 1103s -h, --help show this help message and exit 1103s --manpage output a manpage based on the help 1103s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1103s --errorlevel=ERRORLEVEL 1103s show errorlevel as: none, message, exception, 1103s traceback 1103s -i INPUT, --input=INPUT 1103s read from INPUT in po, pot formats 1103s -x EXCLUDE, --exclude=EXCLUDE 1103s exclude names matching EXCLUDE from input paths 1103s -o OUTPUT, --output=OUTPUT 1103s write to OUTPUT in r0 format 1103s -t TEMPLATE, --template=TEMPLATE 1103s read from TEMPLATE in 1103s -S, --timestamp skip conversion if the output file has newer timestamp 1103s --duplicates=DUPLICATESTYLE 1103s what to do with duplicate strings (identical source 1103s text): merge, msgctxt (default: 'msgctxt') 1103s ========= SMOKE TEST: /usr/bin/po2tiki =========== 1103s Usage: po2tiki [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 1103s 1103s Convert Gettext PO files to TikiWiki's language.php files. See: 1103s http://docs.translatehouse.org/projects/translate- 1103s toolkit/en/latest/commands/tiki2po.html for examples and usage instructions. 1103s 1103s Options: 1103s --version show program's version number and exit 1103s -h, --help show this help message and exit 1103s --manpage output a manpage based on the help 1103s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1103s --errorlevel=ERRORLEVEL 1103s show errorlevel as: none, message, exception, 1103s traceback 1103s -i INPUT, --input=INPUT 1103s read from INPUT in po, pot formats 1103s -x EXCLUDE, --exclude=EXCLUDE 1103s exclude names matching EXCLUDE from input paths 1103s -o OUTPUT, --output=OUTPUT 1103s write to OUTPUT in tiki format 1103s -S, --timestamp skip conversion if the output file has newer timestamp 1103s ========= SMOKE TEST: /usr/bin/po2tmx =========== 1103s Usage: po2tmx [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 1103s 1103s Convert Gettext PO localization files to a TMX (Translation Memory eXchange) 1103s file. See: http://docs.translatehouse.org/projects/translate- 1103s toolkit/en/latest/commands/po2tmx.html for examples and usage instructions. 1103s 1103s Options: 1103s --version show program's version number and exit 1103s -h, --help show this help message and exit 1103s --manpage output a manpage based on the help 1103s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1103s --errorlevel=ERRORLEVEL 1103s show errorlevel as: none, message, exception, 1103s traceback 1103s -i INPUT, --input=INPUT 1103s read from INPUT in po, pot formats 1103s -x EXCLUDE, --exclude=EXCLUDE 1103s exclude names matching EXCLUDE from input paths 1103s -o OUTPUT, --output=OUTPUT 1103s write to OUTPUT in tmx format 1103s -S, --timestamp skip conversion if the output file has newer timestamp 1103s -l LANG, --language=LANG 1103s set target language code (e.g. af-ZA) [required] 1103s --source-language=LANG 1103s set source language code (default: en) 1103s --comments=COMMENT set default comment import: none, source, type or 1103s others (default: none) 1104s ========= SMOKE TEST: /usr/bin/po2ts =========== 1104s Usage: po2ts [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 1104s 1104s Convert Gettext PO localization files to Qt Linguist (.ts) files. See: 1104s http://docs.translatehouse.org/projects/translate- 1104s toolkit/en/latest/commands/ts2po.html for examples and usage instructions. 1104s 1104s Options: 1104s --version show program's version number and exit 1104s -h, --help show this help message and exit 1104s --manpage output a manpage based on the help 1104s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1104s --errorlevel=ERRORLEVEL 1104s show errorlevel as: none, message, exception, 1104s traceback 1104s -i INPUT, --input=INPUT 1104s read from INPUT in po, pot formats 1104s -x EXCLUDE, --exclude=EXCLUDE 1104s exclude names matching EXCLUDE from input paths 1104s -o OUTPUT, --output=OUTPUT 1104s write to OUTPUT in ts format 1104s -t TEMPLATE, --template=TEMPLATE 1104s read from TEMPLATE in ts format 1104s -S, --timestamp skip conversion if the output file has newer timestamp 1104s -c CONTEXT, --context=CONTEXT 1104s use supplied context instead of the one in the .po 1104s file comment 1104s ========= SMOKE TEST: /usr/bin/po2txt =========== 1104s Usage: po2txt [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 1104s 1104s Convert Gettext PO localization files to plain text (.txt) files. See: 1104s http://docs.translatehouse.org/projects/translate- 1104s toolkit/en/latest/commands/txt2po.html for examples and usage instructions. 1104s 1104s Options: 1104s --version show program's version number and exit 1104s -h, --help show this help message and exit 1104s --manpage output a manpage based on the help 1104s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1104s --errorlevel=ERRORLEVEL 1104s show errorlevel as: none, message, exception, 1104s traceback 1104s -i INPUT, --input=INPUT 1104s read from INPUT in po, pot, xlf, xliff formats 1104s -x EXCLUDE, --exclude=EXCLUDE 1104s exclude names matching EXCLUDE from input paths 1104s -o OUTPUT, --output=OUTPUT 1104s write to OUTPUT in txt format 1104s -t TEMPLATE, --template=TEMPLATE 1104s read from TEMPLATE in txt format 1104s -S, --timestamp skip conversion if the output file has newer timestamp 1104s --encoding=ENCODING The encoding of the template file (default: UTF-8) 1104s -w WRAP, --wrap=WRAP set number of columns to wrap text at 1104s --threshold=PERCENT only convert files where the translation completion is 1104s above PERCENT 1104s --fuzzy use translations marked fuzzy 1104s --nofuzzy don't use translations marked fuzzy (default) 1104s ========= SMOKE TEST: /usr/bin/po2web2py =========== 1104s Usage: po2web2py [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 1104s 1104s Convert GNU/gettext PO files to web2py translation dictionaries (.py). See: 1104s http://docs.translatehouse.org/projects/translate- 1104s toolkit/en/latest/commands/web2py2po.html for examples and usage instructions. 1104s 1104s Options: 1104s --version show program's version number and exit 1104s -h, --help show this help message and exit 1104s --manpage output a manpage based on the help 1104s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1104s --errorlevel=ERRORLEVEL 1104s show errorlevel as: none, message, exception, 1104s traceback 1104s -i INPUT, --input=INPUT 1104s read from INPUT in po, pot formats 1104s -x EXCLUDE, --exclude=EXCLUDE 1104s exclude names matching EXCLUDE from input paths 1104s -o OUTPUT, --output=OUTPUT 1104s write to OUTPUT in py format 1104s -S, --timestamp skip conversion if the output file has newer timestamp 1104s --threshold=PERCENT only convert files where the translation completion is 1104s above PERCENT 1104s --fuzzy use translations marked fuzzy 1104s --nofuzzy don't use translations marked fuzzy (default) 1104s ========= SMOKE TEST: /usr/bin/po2wordfast =========== 1104s Usage: po2wordfast [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 1104s 1104s Convert Gettext PO localization files to a Wordfast translation memory file. 1104s See: http://docs.translatehouse.org/projects/translate- 1104s toolkit/en/latest/commands/po2wordfast.html for examples and usage 1104s instructions. 1104s 1104s Options: 1104s --version show program's version number and exit 1104s -h, --help show this help message and exit 1104s --manpage output a manpage based on the help 1104s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1104s --errorlevel=ERRORLEVEL 1104s show errorlevel as: none, message, exception, 1104s traceback 1104s -i INPUT, --input=INPUT 1104s read from INPUT in po, pot formats 1104s -x EXCLUDE, --exclude=EXCLUDE 1104s exclude names matching EXCLUDE from input paths 1104s -o OUTPUT, --output=OUTPUT 1104s write to OUTPUT in txt format 1104s -S, --timestamp skip conversion if the output file has newer timestamp 1104s -l LANG, --language=LANG 1104s set target language code (e.g. af-ZA) [required] 1104s --source-language=LANG 1104s set source language code (default: en) 1104s ========= SMOKE TEST: /usr/bin/po2xliff =========== 1104s Usage: po2xliff [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 1104s 1104s Convert Gettext PO localization files to XLIFF localization files. See: 1104s http://docs.translatehouse.org/projects/translate- 1104s toolkit/en/latest/commands/xliff2po.html for examples and usage instructions. 1104s 1104s Options: 1104s --version show program's version number and exit 1104s -h, --help show this help message and exit 1104s --manpage output a manpage based on the help 1104s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1104s --errorlevel=ERRORLEVEL 1104s show errorlevel as: none, message, exception, 1104s traceback 1104s -i INPUT, --input=INPUT 1104s read from INPUT in po, pot formats 1104s -x EXCLUDE, --exclude=EXCLUDE 1104s exclude names matching EXCLUDE from input paths 1104s -o OUTPUT, --output=OUTPUT 1104s write to OUTPUT in xlf, xliff formats 1104s -t TEMPLATE, --template=TEMPLATE 1104s read from TEMPLATE in xlf, xliff formats 1104s -S, --timestamp skip conversion if the output file has newer timestamp 1105s ========= SMOKE TEST: /usr/bin/po2yaml =========== 1105s Usage: po2yaml [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 1105s 1105s Convert Gettext PO localization files to YAML files. See: 1105s http://docs.translatehouse.org/projects/translate- 1105s toolkit/en/latest/commands/yaml2po.html for examples and usage instructions. 1105s 1105s Options: 1105s --version show program's version number and exit 1105s -h, --help show this help message and exit 1105s --manpage output a manpage based on the help 1105s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1105s --errorlevel=ERRORLEVEL 1105s show errorlevel as: none, message, exception, 1105s traceback 1105s -i INPUT, --input=INPUT 1105s read from INPUT in po, pot formats 1105s -x EXCLUDE, --exclude=EXCLUDE 1105s exclude names matching EXCLUDE from input paths 1105s -o OUTPUT, --output=OUTPUT 1105s write to OUTPUT in yaml, yml formats 1105s -t TEMPLATE, --template=TEMPLATE 1105s read from TEMPLATE in yaml, yml formats 1105s -S, --timestamp skip conversion if the output file has newer timestamp 1105s --threshold=PERCENT only convert files where the translation completion is 1105s above PERCENT 1105s --fuzzy use translations marked fuzzy 1105s --nofuzzy don't use translations marked fuzzy (default) 1105s ========= SMOKE TEST: /usr/bin/poclean =========== 1105s Usage: poclean [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 1105s 1105s Produces a clean file from an unclean file (Trados/Wordfast) by stripping out 1105s the tw4win indicators. This does not convert an RTF file to PO/XLIFF, but 1105s produces the target file with only the target text in from a text version of 1105s the RTF. 1105s 1105s Options: 1105s --version show program's version number and exit 1105s -h, --help show this help message and exit 1105s --manpage output a manpage based on the help 1105s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1105s --errorlevel=ERRORLEVEL 1105s show errorlevel as: none, message, exception, 1105s traceback 1105s -i INPUT, --input=INPUT 1105s read from INPUT in po, pot, xlf, xliff formats 1105s -x EXCLUDE, --exclude=EXCLUDE 1105s exclude names matching EXCLUDE from input paths 1105s -o OUTPUT, --output=OUTPUT 1105s write to OUTPUT in po, pot, xlf, xliff formats 1105s -S, --timestamp skip conversion if the output file has newer timestamp 1105s ========= SMOKE TEST: /usr/bin/pocompendium =========== 1105s Usage: pocompendium [options] output.po <-d directory(s)|file(s)> 1105s The first parameter is the output file, standard output if the output file is '-'. 1105s Any number of directories may be specified for input files. 1105s Options: 1105s --invert|v Creates an inverse compendium with msgid and msgstr swapped 1105s --errors|e Only ouput msg bundles that have errors 1105s --correct|c Only ouput msg bundles that are correctly translated 1105s --ignore-case|i Drops all strings to lowercase 1105s --strip-accel-tilde|-st Strip all tilde (~) accelerator characters 1105s --strip-accel-amp|-sa Strip all ampersand (&) accelerator characters 1105s --strip-accel-under|-su Strip all underscore (_) accelerator characters 1105s ========= SMOKE TEST: /usr/bin/pocompile =========== 1105s Usage: pocompile [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 1105s 1105s Compile XLIFF and Gettext PO localization files into Gettext MO (Machine 1105s Object) files. See: http://docs.translatehouse.org/projects/translate- 1105s toolkit/en/latest/commands/pocompile.html for examples and usage instructions. 1105s 1105s Options: 1105s --version show program's version number and exit 1105s -h, --help show this help message and exit 1105s --manpage output a manpage based on the help 1105s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1105s --errorlevel=ERRORLEVEL 1105s show errorlevel as: none, message, exception, 1105s traceback 1105s -i INPUT, --input=INPUT 1105s read from INPUT in po, pot, xlf, xliff formats 1105s -x EXCLUDE, --exclude=EXCLUDE 1105s exclude names matching EXCLUDE from input paths 1105s -o OUTPUT, --output=OUTPUT 1105s write to OUTPUT in mo format 1105s -S, --timestamp skip conversion if the output file has newer timestamp 1105s --fuzzy use translations marked fuzzy 1105s --nofuzzy don't use translations marked fuzzy (default) 1105s ========= SMOKE TEST: /usr/bin/poconflicts =========== 1105s 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] 1105s input directory is searched for PO files, PO files with name of conflicting string are output in output directory 1105s 1105s Conflict finder for Gettext PO localization files. See: 1105s http://docs.translatehouse.org/projects/translate- 1105s toolkit/en/latest/commands/poconflicts.html for examples and usage 1105s instructions. 1105s 1105s Options: 1105s --version show program's version number and exit 1105s -h, --help show this help message and exit 1105s --manpage output a manpage based on the help 1105s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1105s --errorlevel=ERRORLEVEL 1105s show errorlevel as: none, message, exception, 1105s traceback 1105s -i INPUT, --input=INPUT 1105s read from INPUT in po format 1105s -x EXCLUDE, --exclude=EXCLUDE 1105s exclude names matching EXCLUDE from input paths 1105s -o OUTPUT, --output=OUTPUT 1105s write to OUTPUT in po format 1105s -I, --ignore-case ignore case distinctions 1105s -v, --invert invert the conflicts thus extracting conflicting 1105s destination words 1105s --accelerator=ACCELERATORS 1105s ignores the given accelerator characters when matching 1105s ========= SMOKE TEST: /usr/bin/pocount =========== 1105s usage: pocount [-h] [--incomplete] 1105s [--full | --csv | --short | --short-strings | --short-words] 1105s [--no-color] 1105s files [files ...] 1105s 1105s positional arguments: 1105s files 1105s 1105s options: 1105s -h, --help show this help message and exit 1105s --incomplete skip 100% translated files. 1105s 1105s Output format: 1105s --full (default) statistics in full, verbose format 1105s --csv statistics in CSV format 1105s --short same as --short-strings 1105s --short-strings statistics of strings in short format - one line per file 1105s --short-words statistics of words in short format - one line per file 1105s --no-color show output without color 1105s ========= SMOKE TEST: /usr/bin/podebug =========== 1106s Usage: podebug [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 1106s 1106s Insert debug messages into XLIFF and Gettext PO localization files. See: 1106s http://docs.translatehouse.org/projects/translate- 1106s toolkit/en/latest/commands/podebug.html for examples and usage instructions. 1106s 1106s Options: 1106s --version show program's version number and exit 1106s -h, --help show this help message and exit 1106s --manpage output a manpage based on the help 1106s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1106s --errorlevel=ERRORLEVEL 1106s show errorlevel as: none, message, exception, 1106s traceback 1106s -i INPUT, --input=INPUT 1106s read from INPUT in po, pot, pot, tmx, xlf, xliff 1106s formats 1106s -x EXCLUDE, --exclude=EXCLUDE 1106s exclude names matching EXCLUDE from input paths 1106s -o OUTPUT, --output=OUTPUT 1106s write to OUTPUT in po, pot, tmx, xlf, xliff formats 1106s -S, --timestamp skip conversion if the output file has newer timestamp 1106s -f FORMAT, --format=FORMAT 1106s specify format string 1106s --rewrite=STYLE the translation rewrite style: blank, bracket, chef, 1106s classified, en, flipped, unicode, xxx 1106s --ignore=APPLICATION apply tagging ignore rules for the given application: 1106s gtk, kde, libreoffice, mozilla, openoffice 1106s --preserveplaceholders 1106s attempt to exclude characters that are part of 1106s placeholders when performing character-level rewrites 1106s so that consuming applications can still use the 1106s placeholders to generate final output 1106s ========= SMOKE TEST: /usr/bin/pofilter =========== 1106s Usage: pofilter [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT 1106s 1106s Perform quality checks on Gettext PO, XLIFF and TMX localization files. 1106s Snippet files are created whenever a test fails. These can be examined, 1106s corrected and merged back into the originals using pomerge. See: 1106s http://docs.translatehouse.org/projects/translate- 1106s toolkit/en/latest/commands/pofilter.html for examples and usage instructions 1106s and http://docs.translatehouse.org/projects/translate- 1106s toolkit/en/latest/commands/pofilter_tests.html for full descriptions of all 1106s tests. 1106s 1106s Options: 1106s --version show program's version number and exit 1106s -h, --help show this help message and exit 1106s --manpage output a manpage based on the help 1106s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1106s --errorlevel=ERRORLEVEL 1106s show errorlevel as: none, message, exception, 1106s traceback 1106s -i INPUT, --input=INPUT 1106s read from INPUT in po, pot, tmx, xlf, xliff formats 1106s -x EXCLUDE, --exclude=EXCLUDE 1106s exclude names matching EXCLUDE from input paths 1106s -o OUTPUT, --output=OUTPUT 1106s write to OUTPUT in po, pot, tmx, xlf, xliff formats 1106s -l, --listfilters list filters available 1106s --review include units marked for review (default) 1106s --noreview exclude units marked for review 1106s --fuzzy include units marked fuzzy (default) 1106s --nofuzzy exclude units marked fuzzy 1106s --nonotes don't add notes about the errors 1106s --autocorrect output automatic corrections where possible rather 1106s than describing issues 1106s --language=LANG set target language code (e.g. af-ZA) [required for 1106s spell check and recommended in general] 1106s --openoffice use the standard checks for OpenOffice translations 1106s --libreoffice use the standard checks for LibreOffice translations 1106s --mozilla use the standard checks for Mozilla translations 1106s --drupal use the standard checks for Drupal translations 1106s --gnome use the standard checks for Gnome translations 1106s --kde use the standard checks for KDE translations 1106s --wx use the standard checks for wxWidgets translations 1106s --excludefilter=FILTER 1106s don't use FILTER when filtering 1106s -t FILTER, --test=FILTER 1106s only use test FILTERs specified with this option when 1106s filtering 1106s --notranslatefile=FILE 1106s read list of untranslatable words from FILE (must not 1106s be translated) 1106s --musttranslatefile=FILE 1106s read list of translatable words from FILE (must be 1106s translated) 1106s --validcharsfile=FILE 1106s read list of all valid characters from FILE (must be 1106s in UTF-8) 1106s ========= SMOKE TEST: /usr/bin/pogrep =========== 1106s 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] 1106s 1106s Grep XLIFF, Gettext PO and TMX localization files. Matches are output to 1106s snippet files of the same type which can then be reviewed and later merged 1106s using :doc:`pomerge `. See: 1106s http://docs.translatehouse.org/projects/translate- 1106s toolkit/en/latest/commands/pogrep.html for examples and usage instructions. 1106s 1106s Options: 1106s --version show program's version number and exit 1106s -h, --help show this help message and exit 1106s --manpage output a manpage based on the help 1106s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1106s --errorlevel=ERRORLEVEL 1106s show errorlevel as: none, message, exception, 1106s traceback 1106s -i INPUT, --input=INPUT 1106s read from INPUT in gmo, mo, po, pot, tmx, xlf, xlff, 1106s xliff formats 1106s -x EXCLUDE, --exclude=EXCLUDE 1106s exclude names matching EXCLUDE from input paths 1106s -o OUTPUT, --output=OUTPUT 1106s write to OUTPUT in gmo, mo, po, pot, tmx, xlf, xlff, 1106s xliff formats 1106s --search=SEARCHPARTS searches the given parts (source, target, notes and 1106s locations) 1106s -I, --ignore-case ignore case distinctions 1106s -e, --regexp use regular expression matching 1106s -v, --invert-match select non-matching lines 1106s --accelerator=ACCELERATOR 1106s ignores the given accelerator when matching 1106s -k, --keep-translations 1106s always extract units with translations 1106s ========= SMOKE TEST: /usr/bin/pomerge =========== 1106s Usage: pomerge [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 1106s 1106s Merges XLIFF and Gettext PO localization files. Snippet file produced by 1106s e.g. :doc:`pogrep ` and updated by a translator can be 1106s merged back into the original files. See: 1106s http://docs.translatehouse.org/projects/translate- 1106s toolkit/en/latest/commands/pomerge.html for examples and usage instructions. 1106s 1106s Options: 1106s --version show program's version number and exit 1106s -h, --help show this help message and exit 1106s --manpage output a manpage based on the help 1106s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1106s --errorlevel=ERRORLEVEL 1106s show errorlevel as: none, message, exception, 1106s traceback 1106s -i INPUT, --input=INPUT 1106s read from INPUT in po, pot, pot, xlf, xliff formats 1106s -x EXCLUDE, --exclude=EXCLUDE 1106s exclude names matching EXCLUDE from input paths 1106s -o OUTPUT, --output=OUTPUT 1106s write to OUTPUT in po, pot, pot, xlf, xliff formats 1106s -t TEMPLATE, --template=TEMPLATE 1106s read from TEMPLATE in po, pot, pot, xlf, xliff formats 1106s -S, --timestamp skip conversion if the output file has newer timestamp 1106s --mergeblanks=MERGEBLANKS 1106s whether to overwrite existing translations with blank 1106s translations (yes/no). Default is yes. 1106s --mergefuzzy=MERGEFUZZY 1106s whether to consider fuzzy translations from input 1106s (yes/no). Default is yes. 1106s --mergecomments=MERGECOMMENTS 1106s whether to merge comments as well as translations 1106s (yes/no). Default is yes. 1106s ========= SMOKE TEST: /usr/bin/pomigrate2 =========== 1106s Usage pomigrate2 [options] 1106s 1106s Options: 1106s -F|--use-fuzzy-matching - use fuzzy algorithms when merging to attempt to match strings 1106s -C|--use-compendium - create and use a compendium built from the migrating files 1106s -C|--use-compendium=some-compendium.po 1106s - use an external compendium during the migration 1106s --no-wrap - do not wrap long lines 1106s --locale=lang - set locale for newly born files 1106s -q|--quiet - suppress most output 1106s -p|--pot2po - use pot2po instead of msgmerge to migrate 1106s ========= SMOKE TEST: /usr/bin/popuretext =========== 1106s Usage: popuretext ( -P pot-dir | po-dir ) file.txt [accelerator] 1106s ========= SMOKE TEST: /usr/bin/poreencode =========== 1106s Usage: poreencode 1106s eg: poreencode UTF-8 af/ 1106s ========= SMOKE TEST: /usr/bin/porestructure =========== 1106s Usage: porestructure [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT 1106s input directory is searched for PO files with (poconflicts) comments, all entries are written to files in a directory structure for pomerge 1106s 1106s Restructure Gettxt PO files produced by :doc:`poconflicts 1106s ` into the original directory tree for merging using 1106s :doc:`pomerge `. See: 1106s http://docs.translatehouse.org/projects/translate- 1106s toolkit/en/latest/commands/pomerge.html for examples and usage instructions. 1106s 1106s Options: 1106s --version show program's version number and exit 1106s -h, --help show this help message and exit 1106s --manpage output a manpage based on the help 1106s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1106s --errorlevel=ERRORLEVEL 1106s show errorlevel as: none, message, exception, 1106s traceback 1106s -i INPUT, --input=INPUT 1106s read from INPUT in po format 1106s -x EXCLUDE, --exclude=EXCLUDE 1106s exclude names matching EXCLUDE from input paths 1106s -o OUTPUT, --output=OUTPUT 1106s write to OUTPUT in po format 1106s ========= SMOKE TEST: /usr/bin/posegment =========== 1107s Usage: posegment [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 1107s 1107s Segment Gettext PO, XLIFF and TMX localization files at the sentence level. 1107s See: http://docs.translatehouse.org/projects/translate- 1107s toolkit/en/latest/commands/posegment.html for examples and usage instructions. 1107s 1107s Options: 1107s --version show program's version number and exit 1107s -h, --help show this help message and exit 1107s --manpage output a manpage based on the help 1107s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1107s --errorlevel=ERRORLEVEL 1107s show errorlevel as: none, message, exception, 1107s traceback 1107s -i INPUT, --input=INPUT 1107s read from INPUT in po, pot, tmx, xlf, xliff formats 1107s -x EXCLUDE, --exclude=EXCLUDE 1107s exclude names matching EXCLUDE from input paths 1107s -o OUTPUT, --output=OUTPUT 1107s write to OUTPUT in po, pot, tmx, xlf, xliff formats 1107s -S, --timestamp skip conversion if the output file has newer timestamp 1107s -P, --pot output PO Templates (.pot) rather than PO files (.po) 1107s -l LANG, --language=LANG 1107s the target language code 1107s --source-language=LANG 1107s the source language code (default 'en') 1107s --keepspaces Disable automatic stripping of whitespace 1107s --only-aligned Removes units where sentence number does not 1107s correspond 1107s ========= SMOKE TEST: /usr/bin/poswap =========== 1107s Usage: poswap [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 1107s 1107s Builds a new translation file with the target of the input language as source 1107s language. .. note:: Ensure that the two po files correspond 100% to the same 1107s pot file before using this. To translate Kurdish (ku) through French:: 1107s poswap -i fr/ -t ku -o fr-ku To convert the fr-ku files back to en-ku:: 1107s poswap --reverse -i fr/ -t fr-ku -o en-ku See: 1107s http://docs.translatehouse.org/projects/translate- 1107s toolkit/en/latest/commands/poswap.html for examples and usage instructions. 1107s 1107s Options: 1107s --version show program's version number and exit 1107s -h, --help show this help message and exit 1107s --manpage output a manpage based on the help 1107s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1107s --errorlevel=ERRORLEVEL 1107s show errorlevel as: none, message, exception, 1107s traceback 1107s -i INPUT, --input=INPUT 1107s read from INPUT in po, pot formats 1107s -x EXCLUDE, --exclude=EXCLUDE 1107s exclude names matching EXCLUDE from input paths 1107s -o OUTPUT, --output=OUTPUT 1107s write to OUTPUT in po, pot formats 1107s -t TEMPLATE, --template=TEMPLATE 1107s read from TEMPLATE in po, pot, pot formats 1107s -S, --timestamp skip conversion if the output file has newer timestamp 1107s --reverse reverse the process of intermediate language 1107s conversion 1107s ========= SMOKE TEST: /usr/bin/pot2po =========== 1107s 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] 1107s 1107s Convert template files (like .pot or template .xlf files) to translation 1107s files, preserving existing translations. See: 1107s http://docs.translatehouse.org/projects/translate- 1107s toolkit/en/latest/commands/pot2po.html for examples and usage instructions. 1107s 1107s Options: 1107s --version show program's version number and exit 1107s -h, --help show this help message and exit 1107s --manpage output a manpage based on the help 1107s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1107s --errorlevel=ERRORLEVEL 1107s show errorlevel as: none, message, exception, 1107s traceback 1107s -i INPUT, --input=INPUT 1107s read from INPUT in catkeys, lang, pot, ts, xlf, xliff 1107s formats 1107s -x EXCLUDE, --exclude=EXCLUDE 1107s exclude names matching EXCLUDE from input paths 1107s -o OUTPUT, --output=OUTPUT 1107s write to OUTPUT in catkeys, lang, po, pot, ts, xlf, 1107s xliff formats 1107s -t TEMPLATE, --template=TEMPLATE 1107s read from TEMPLATE in catkeys, lang, po, pot, ts, xlf, 1107s xliff formats 1107s -S, --timestamp skip conversion if the output file has newer timestamp 1107s -P, --pot output PO Templates (.pot) rather than PO files (.po) 1107s --tm=TM The file to use as translation memory when fuzzy 1107s matching 1107s -s MIN_SIMILARITY, --similarity=MIN_SIMILARITY 1107s The minimum similarity for inclusion (default: 75%) 1107s --nofuzzymatching Disable fuzzy matching 1107s ========= SMOKE TEST: /usr/bin/poterminology =========== 1107s 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] 1107s input directory is searched for PO files, terminology PO file is output file 1107s 1107s Create a terminology file by reading a set of .po or .pot files to produce a 1107s pootle-terminology.pot. See: 1107s http://docs.translatehouse.org/projects/translate- 1107s toolkit/en/latest/commands/poterminology.html for examples and usage 1107s instructions. 1107s 1107s Options: 1107s --version show program's version number and exit 1107s -h, --help show this help message and exit 1107s --manpage output a manpage based on the help 1107s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1107s --errorlevel=ERRORLEVEL 1107s show errorlevel as: none, message, exception, 1107s traceback 1107s -i INPUT, --input=INPUT 1107s read from INPUT in po, pot formats 1107s -x EXCLUDE, --exclude=EXCLUDE 1107s exclude names matching EXCLUDE from input paths 1107s -o OUTPUT, --output=OUTPUT 1107s write to OUTPUT in po, pot formats 1107s -u UPDATEFILE, --update=UPDATEFILE 1107s update terminology in UPDATEFILE 1107s -S STOPFILE, --stopword-list=STOPFILE 1107s read stopword (term exclusion) list from STOPFILE 1107s (default /usr/share/pyshared/translate/share/stoplist- 1107s en) 1107s -F, --fold-titlecase fold "Title Case" to lowercase (default) 1107s -C, --preserve-case preserve all uppercase/lowercase 1107s -I, --ignore-case make all terms lowercase 1107s --accelerator=ACCELERATORS 1107s ignore the given accelerator characters when matching 1107s -t LENGTH, --term-words=LENGTH 1107s generate terms of up to LENGTH words (default 3) 1107s --nonstop-needed=MIN omit terms with less than MIN nonstop words (default 1107s 1) 1107s --inputs-needed=MIN omit terms appearing in less than MIN input files 1107s (default 2, or 1 if only one input file) 1107s --fullmsg-needed=MIN omit full message terms appearing in less than MIN 1107s different messages (default 1) 1107s --substr-needed=MIN omit substring-only terms appearing in less than MIN 1107s different messages (default 2) 1107s --locs-needed=MIN omit terms appearing in less than MIN different 1107s original source files (default 2) 1107s --sort=ORDER output sort order(s): frequency, dictionary, length 1107s (may repeat option, default is all in above order) 1107s --source-language=LANG 1107s the source language code (default 'en') 1107s -v, --invert invert the source and target languages for terminology 1107s ========= SMOKE TEST: /usr/bin/pretranslate =========== 1107s Usage: pretranslate [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 1107s 1107s Fill localization files with suggested translations based on translation 1107s memory and existing translations. See: 1107s http://docs.translatehouse.org/projects/translate- 1107s toolkit/en/latest/commands/pretranslate.html for examples and usage 1107s instructions. 1107s 1107s Options: 1107s --version show program's version number and exit 1107s -h, --help show this help message and exit 1107s --manpage output a manpage based on the help 1107s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1107s --errorlevel=ERRORLEVEL 1107s show errorlevel as: none, message, exception, 1107s traceback 1107s -i INPUT, --input=INPUT 1107s read from INPUT in po, pot, pot, xlf, xliff formats 1107s -x EXCLUDE, --exclude=EXCLUDE 1107s exclude names matching EXCLUDE from input paths 1107s -o OUTPUT, --output=OUTPUT 1107s write to OUTPUT in po, pot, xlf, xliff formats 1107s -t TEMPLATE, --template=TEMPLATE 1107s read from TEMPLATE in po, pot, xlf, xliff formats 1107s -S, --timestamp skip conversion if the output file has newer timestamp 1107s --tm=TM The file to use as translation memory when fuzzy 1107s matching 1107s -s MIN_SIMILARITY, --similarity=MIN_SIMILARITY 1107s The minimum similarity for inclusion (default: 75%) 1107s --nofuzzymatching Disable fuzzy matching 1107s ========= SMOKE TEST: /usr/bin/prop2po =========== 1108s 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] 1108s 1108s Convert Java/Mozilla .properties files to Gettext PO localization files. 1108s See: http://docs.translatehouse.org/projects/translate- 1108s toolkit/en/latest/commands/prop2po.html for examples and usage instructions. 1108s 1108s Options: 1108s --version show program's version number and exit 1108s -h, --help show this help message and exit 1108s --manpage output a manpage based on the help 1108s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1108s --errorlevel=ERRORLEVEL 1108s show errorlevel as: none, message, exception, 1108s traceback 1108s -i INPUT, --input=INPUT 1108s read from INPUT in lang, properties, strings formats 1108s -x EXCLUDE, --exclude=EXCLUDE 1108s exclude names matching EXCLUDE from input paths 1108s -o OUTPUT, --output=OUTPUT 1108s write to OUTPUT in po, pot formats 1108s -t TEMPLATE, --template=TEMPLATE 1108s read from TEMPLATE in lang, properties, strings 1108s formats 1108s -S, --timestamp skip conversion if the output file has newer timestamp 1108s -P, --pot output PO Templates (.pot) rather than PO files (.po) 1108s --personality=TYPE override the input file format: java, java-utf8, java- 1108s utf16, xwiki, flex, mozilla, gaia, gwt, skype, 1108s strings, strings-utf8, joomla (for .properties files, 1108s default: java) 1108s --encoding=ENCODING override the encoding set by the personality 1108s --duplicates=DUPLICATESTYLE 1108s what to do with duplicate strings (identical source 1108s text): merge, msgctxt (default: 'msgctxt') 1108s ========= SMOKE TEST: /usr/bin/pydiff =========== 1108s usage: pydiff [-h] [-i] [-U NUM] [-r] [-N] [--unidirectional-new-file] [-s] 1108s [-x PAT] [--fromcontains TEXT] [--tocontains TEXT] 1108s [--contains TEXT] [-I] [--accelerator ACCELERATORS] 1108s fromfile tofile 1108s 1108s positional arguments: 1108s fromfile 1108s tofile 1108s 1108s options: 1108s -h, --help show this help message and exit 1108s -i, --ignore-case Ignore case differences in file contents. 1108s -U NUM, --unified NUM 1108s Output NUM (default 3) lines of unified context 1108s -r, --recursive Recursively compare any subdirectories found. 1108s -N, --new-file Treat absent files as empty. 1108s --unidirectional-new-file 1108s Treat absent first files as empty. 1108s -s, --report-identical-files 1108s Report when two files are the same. 1108s -x PAT, --exclude PAT 1108s Exclude files that match PAT. 1108s --fromcontains TEXT Only show changes where fromfile contains TEXT 1108s --tocontains TEXT Only show changes where tofile contains TEXT 1108s --contains TEXT Only show changes where fromfile or tofile contains 1108s TEXT 1108s -I, --ignore-case-contains 1108s Ignore case differences when matching any of the 1108s changes 1108s --accelerator ACCELERATORS 1108s ignores the given accelerator characters when matching 1108s ========= SMOKE TEST: /usr/bin/pypo2phppo =========== 1108s Usage: pypo2phppo [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 1108s 1108s Convert Python format .po files to PHP format .po files. 1108s 1108s Options: 1108s --version show program's version number and exit 1108s -h, --help show this help message and exit 1108s --manpage output a manpage based on the help 1108s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1108s --errorlevel=ERRORLEVEL 1108s show errorlevel as: none, message, exception, 1108s traceback 1108s -i INPUT, --input=INPUT 1108s read from INPUT in po, pot formats 1108s -x EXCLUDE, --exclude=EXCLUDE 1108s exclude names matching EXCLUDE from input paths 1108s -o OUTPUT, --output=OUTPUT 1108s write to OUTPUT in po, pot formats 1108s -S, --timestamp skip conversion if the output file has newer timestamp 1108s ========= SMOKE TEST: /usr/bin/rc2po =========== 1108s 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] 1108s 1108s Convert Windows RC files to Gettext PO localization files. See: 1108s http://docs.translatehouse.org/projects/translate- 1108s toolkit/en/latest/commands/rc2po.html for examples and usage instructions. 1108s 1108s Options: 1108s --version show program's version number and exit 1108s -h, --help show this help message and exit 1108s --manpage output a manpage based on the help 1108s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1108s --errorlevel=ERRORLEVEL 1108s show errorlevel as: none, message, exception, 1108s traceback 1108s -i INPUT, --input=INPUT 1108s read from INPUT in nls, rc formats 1108s -x EXCLUDE, --exclude=EXCLUDE 1108s exclude names matching EXCLUDE from input paths 1108s -o OUTPUT, --output=OUTPUT 1108s write to OUTPUT in po, pot formats 1108s -t TEMPLATE, --template=TEMPLATE 1108s read from TEMPLATE in nls, rc formats 1108s -S, --timestamp skip conversion if the output file has newer timestamp 1108s -P, --pot output PO Templates (.pot) rather than PO files (.po) 1108s --charset=CHARSET charset to use to decode the RC files (autodetection 1108s is used by default) 1108s -l LANG, --lang=LANG LANG entry (default: None) 1108s --sublang=SUBLANG SUBLANG entry (default: None) 1108s --duplicates=DUPLICATESTYLE 1108s what to do with duplicate strings (identical source 1108s text): merge, msgctxt (default: 'msgctxt') 1108s ========= SMOKE TEST: /usr/bin/resx2po =========== 1109s 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] 1109s 1109s Convert .Net Resource (.resx) to Gettext PO localisation files. See: 1109s http://docs.translatehouse.org/projects/translate- 1109s toolkit/en/latest/commands/resx2po.html for examples and usage instructions. 1109s 1109s Options: 1109s --version show program's version number and exit 1109s -h, --help show this help message and exit 1109s --manpage output a manpage based on the help 1109s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1109s --errorlevel=ERRORLEVEL 1109s show errorlevel as: none, message, exception, 1109s traceback 1109s -i INPUT, --input=INPUT 1109s read from INPUT in resx format 1109s -x EXCLUDE, --exclude=EXCLUDE 1109s exclude names matching EXCLUDE from input paths 1109s -o OUTPUT, --output=OUTPUT 1109s write to OUTPUT in po, pot formats 1109s -t TEMPLATE, --template=TEMPLATE 1109s read from TEMPLATE in resx format 1109s -S, --timestamp skip conversion if the output file has newer timestamp 1109s -P, --pot output PO Templates (.pot) rather than PO files (.po) 1109s --filter=FILTER leaves to extract e.g. 'name,desc': (default: extract 1109s everything) 1109s --duplicates=DUPLICATESTYLE 1109s what to do with duplicate strings (identical source 1109s text): merge, msgctxt (default: 'msgctxt') 1109s ========= SMOKE TEST: /usr/bin/sub2po =========== 1109s 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] 1109s 1109s Convert subtitle files to Gettext PO localization files. See: 1109s http://docs.translatehouse.org/projects/translate- 1109s toolkit/en/latest/commands/sub2po.html for examples and usage instructions. 1109s 1109s Options: 1109s --version show program's version number and exit 1109s -h, --help show this help message and exit 1109s --manpage output a manpage based on the help 1109s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1109s --errorlevel=ERRORLEVEL 1109s show errorlevel as: none, message, exception, 1109s traceback 1109s -i INPUT, --input=INPUT 1109s read from INPUT in ass, srt, ssa, sub formats 1109s -x EXCLUDE, --exclude=EXCLUDE 1109s exclude names matching EXCLUDE from input paths 1109s -o OUTPUT, --output=OUTPUT 1109s write to OUTPUT in po, pot formats 1109s -t TEMPLATE, --template=TEMPLATE 1109s read from TEMPLATE in ass, srt, ssa, sub formats 1109s -S, --timestamp skip conversion if the output file has newer timestamp 1109s -P, --pot output PO Templates (.pot) rather than PO files (.po) 1109s --duplicates=DUPLICATESTYLE 1109s what to do with duplicate strings (identical source 1109s text): merge, msgctxt (default: 'msgctxt') 1109s ========= SMOKE TEST: /usr/bin/symb2po =========== 1109s 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] 1109s 1109s Convert Symbian localisation files to Gettext PO localization files. See: 1109s http://docs.translatehouse.org/projects/translate- 1109s toolkit/en/latest/commands/symb2po.html for examples and usage instructions. 1109s 1109s Options: 1109s --version show program's version number and exit 1109s -h, --help show this help message and exit 1109s --manpage output a manpage based on the help 1109s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1109s --errorlevel=ERRORLEVEL 1109s show errorlevel as: none, message, exception, 1109s traceback 1109s -i INPUT, --input=INPUT 1109s read from INPUT in r01 format 1109s -x EXCLUDE, --exclude=EXCLUDE 1109s exclude names matching EXCLUDE from input paths 1109s -o OUTPUT, --output=OUTPUT 1109s write to OUTPUT in po, pot formats 1109s -t TEMPLATE, --template=TEMPLATE 1109s read from TEMPLATE in 1109s -S, --timestamp skip conversion if the output file has newer timestamp 1109s -P, --pot output PO Templates (.pot) rather than PO files (.po) 1109s --duplicates=DUPLICATESTYLE 1109s what to do with duplicate strings (identical source 1109s text): merge, msgctxt (default: 'msgctxt') 1109s ========= SMOKE TEST: /usr/bin/tbx2po =========== 1109s Usage: tbx2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 1109s 1109s Convert TermBase eXchange (.tbx) glossary file into a Gettext PO file. See: 1109s http://docs.translatehouse.org/projects/translate- 1109s toolkit/en/latest/commands/tbx2po.html for examples and usage instructions 1109s 1109s Options: 1109s --version show program's version number and exit 1109s -h, --help show this help message and exit 1109s --manpage output a manpage based on the help 1109s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1109s --errorlevel=ERRORLEVEL 1109s show errorlevel as: none, message, exception, 1109s traceback 1109s -i INPUT, --input=INPUT 1109s read from INPUT in tbx format 1109s -x EXCLUDE, --exclude=EXCLUDE 1109s exclude names matching EXCLUDE from input paths 1109s -o OUTPUT, --output=OUTPUT 1109s write to OUTPUT in po, pot formats 1109s -S, --timestamp skip conversion if the output file has newer timestamp 1109s ========= SMOKE TEST: /usr/bin/tiki2po =========== 1109s Usage: tiki2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] 1109s 1109s Convert TikiWiki's language.php files to Gettext PO localization files. See: 1109s http://docs.translatehouse.org/projects/translate- 1109s toolkit/en/latest/commands/tiki2po.html for examples and usage instructions. 1109s 1109s Options: 1109s --version show program's version number and exit 1109s -h, --help show this help message and exit 1109s --manpage output a manpage based on the help 1109s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1109s --errorlevel=ERRORLEVEL 1109s show errorlevel as: none, message, exception, 1109s traceback 1109s -i INPUT, --input=INPUT 1109s read from INPUT in php format 1109s -x EXCLUDE, --exclude=EXCLUDE 1109s exclude names matching EXCLUDE from input paths 1109s -o OUTPUT, --output=OUTPUT 1109s write to OUTPUT in po, pot formats 1109s -S, --timestamp skip conversion if the output file has newer timestamp 1109s --include-unused Include strings in the unused section 1109s ========= SMOKE TEST: /usr/bin/tmserver =========== 1110s usage: tmserver [-h] [-d TMDBFILE] [-f TMFILES] [-t TARGET_LANG] 1110s [-s SOURCE_LANG] [-b BIND] [-p PORT] 1110s [--max-candidates MAX_CANDIDATES] 1110s [--min-similarity MIN_SIMILARITY] [--max-length MAX_LENGTH] 1110s [--debug] 1110s 1110s options: 1110s -h, --help show this help message and exit 1110s -d TMDBFILE, --tmdb TMDBFILE 1110s translation memory database file 1110s -f TMFILES, --import-translation-file TMFILES 1110s translation file to import into the database 1110s -t TARGET_LANG, --import-target-lang TARGET_LANG 1110s target language of translation files 1110s -s SOURCE_LANG, --import-source-lang SOURCE_LANG 1110s source language of translation files 1110s -b BIND, --bind BIND address to bind server to (default: localhost) 1110s -p PORT, --port PORT port to listen on (default: 8888) 1110s --max-candidates MAX_CANDIDATES 1110s Maximum number of candidates 1110s --min-similarity MIN_SIMILARITY 1110s minimum similarity 1110s --max-length MAX_LENGTH 1110s Maxmimum string length 1110s --debug enable debugging features 1110s ========= SMOKE TEST: /usr/bin/ts2po =========== 1110s Usage: ts2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 1110s 1110s Convert Qt Linguist (.ts) files to Gettext PO localization files. See: 1110s http://docs.translatehouse.org/projects/translate- 1110s toolkit/en/latest/commands/ts2po.html for examples and usage instructions. 1110s 1110s Options: 1110s --version show program's version number and exit 1110s -h, --help show this help message and exit 1110s --manpage output a manpage based on the help 1110s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1110s --errorlevel=ERRORLEVEL 1110s show errorlevel as: none, message, exception, 1110s traceback 1110s -i INPUT, --input=INPUT 1110s read from INPUT in ts format 1110s -x EXCLUDE, --exclude=EXCLUDE 1110s exclude names matching EXCLUDE from input paths 1110s -o OUTPUT, --output=OUTPUT 1110s write to OUTPUT in po, pot formats 1110s -S, --timestamp skip conversion if the output file has newer timestamp 1110s -P, --pot output PO Templates (.pot) rather than PO files (.po) 1110s --duplicates=DUPLICATESTYLE 1110s what to do with duplicate strings (identical source 1110s text): merge, msgctxt (default: 'msgctxt') 1110s ========= SMOKE TEST: /usr/bin/txt2po =========== 1110s Usage: txt2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 1110s 1110s Convert plain text (.txt) files to Gettext PO localization files. See: 1110s http://docs.translatehouse.org/projects/translate- 1110s toolkit/en/latest/commands/txt2po.html for examples and usage instructions. 1110s 1110s Options: 1110s --version show program's version number and exit 1110s -h, --help show this help message and exit 1110s --manpage output a manpage based on the help 1110s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1110s --errorlevel=ERRORLEVEL 1110s show errorlevel as: none, message, exception, 1110s traceback 1110s -i INPUT, --input=INPUT 1110s read from INPUT in *, txt formats 1110s -x EXCLUDE, --exclude=EXCLUDE 1110s exclude names matching EXCLUDE from input paths 1110s -o OUTPUT, --output=OUTPUT 1110s write to OUTPUT in po, pot formats 1110s -S, --timestamp skip conversion if the output file has newer timestamp 1110s -P, --pot output PO Templates (.pot) rather than PO files (.po) 1110s --encoding=ENCODING The encoding of the input file (default: UTF-8) 1110s --flavour=FLAVOUR The flavour of text file: plain (default), dokuwiki, 1110s mediawiki 1110s --no-segmentation Don't segment the file, treat it like a single message 1110s --duplicates=DUPLICATESTYLE 1110s what to do with duplicate strings (identical source 1110s text): merge, msgctxt (default: 'msgctxt') 1110s ========= SMOKE TEST: /usr/bin/web2py2po =========== 1110s Usage: web2py2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 1110s 1110s Convert web2py translation dictionaries (.py) to GNU/gettext PO files. See: 1110s http://docs.translatehouse.org/projects/translate- 1110s toolkit/en/latest/commands/web2py2po.html for examples and usage instructions. 1110s 1110s Options: 1110s --version show program's version number and exit 1110s -h, --help show this help message and exit 1110s --manpage output a manpage based on the help 1110s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1110s --errorlevel=ERRORLEVEL 1110s show errorlevel as: none, message, exception, 1110s traceback 1110s -i INPUT, --input=INPUT 1110s read from INPUT in py format 1110s -x EXCLUDE, --exclude=EXCLUDE 1110s exclude names matching EXCLUDE from input paths 1110s -o OUTPUT, --output=OUTPUT 1110s write to OUTPUT in po, pot formats 1110s -S, --timestamp skip conversion if the output file has newer timestamp 1110s -P, --pot output PO Templates (.pot) rather than PO files (.po) 1110s --duplicates=DUPLICATESTYLE 1110s what to do with duplicate strings (identical source 1110s text): merge, msgctxt (default: 'msgctxt') 1110s ========= SMOKE TEST: /usr/bin/xliff2odf =========== 1110s Usage: xliff2odf [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 1110s 1110s Convert XLIFF translation files to OpenDocument (ODF) files. See: 1110s http://docs.translatehouse.org/projects/translate- 1110s toolkit/en/latest/commands/odf2xliff.html for examples and usage instructions. 1110s 1110s Options: 1110s --version show program's version number and exit 1110s -h, --help show this help message and exit 1110s --manpage output a manpage based on the help 1110s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1110s --errorlevel=ERRORLEVEL 1110s show errorlevel as: none, message, exception, 1110s traceback 1110s -i INPUT, --input=INPUT 1110s read from INPUT in xlf format 1110s -x EXCLUDE, --exclude=EXCLUDE 1110s exclude names matching EXCLUDE from input paths 1110s -o OUTPUT, --output=OUTPUT 1110s write to OUTPUT in odc, odf, odg, odi, odm, odp, ods, 1110s odt, otc, otf, otg, oth, oti, otp, ots, ott formats 1110s -t TEMPLATE, --template=TEMPLATE 1110s read from TEMPLATE in odc, odf, odg, odi, odm, odp, 1110s ods, odt, otc, otf, otg, oth, oti, otp, ots, ott 1110s formats 1110s -S, --timestamp skip conversion if the output file has newer timestamp 1111s ========= SMOKE TEST: /usr/bin/xliff2oo =========== 1111s Usage: xliff2oo [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-t|--template TEMPLATE] [-S|--timestamp] 1111s 1111s Convert XLIFF localization files to an OpenOffice.org (SDF) localization 1111s file. See: http://docs.translatehouse.org/projects/translate- 1111s toolkit/en/latest/commands/oo2po.html for examples and usage instructions. 1111s 1111s Options: 1111s --version show program's version number and exit 1111s -h, --help show this help message and exit 1111s --manpage output a manpage based on the help 1111s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1111s --errorlevel=ERRORLEVEL 1111s show errorlevel as: none, message, exception, 1111s traceback 1111s -i INPUT, --input=INPUT 1111s read from INPUT in po, pot, xlf, xliff formats 1111s -x EXCLUDE, --exclude=EXCLUDE 1111s exclude names matching EXCLUDE from input paths 1111s -o OUTPUT, --output=OUTPUT 1111s write to OUTPUT in oo, sdf formats 1111s -t TEMPLATE, --template=TEMPLATE 1111s read from TEMPLATE in oo, sdf formats 1111s -S, --timestamp skip conversion if the output file has newer timestamp 1111s -l LANG, --language=LANG 1111s set target language code (e.g. af-ZA) [required] 1111s --source-language=LANG 1111s set source language code (default en-US) 1111s -T, --keeptimestamp don't change the timestamps of the strings 1111s --nonrecursiveoutput don't treat the output oo as a recursive store 1111s --nonrecursivetemplate 1111s don't treat the template oo as a recursive store 1111s --skipsource don't output the source language, but fallback to it 1111s where needed 1111s --filteraction=ACTION 1111s action on pofilter failure: none (default), warn, 1111s exclude-serious, exclude-all 1111s --fuzzy use translations marked fuzzy 1111s --nofuzzy don't use translations marked fuzzy (default) 1111s --multifile=MULTIFILESTYLE 1111s how to split po/pot files (single, toplevel or 1111s onefile) 1111s ========= SMOKE TEST: /usr/bin/xliff2po =========== 1111s Usage: xliff2po [--version] [-h|--help] [--manpage] [--progress PROGRESS] [--errorlevel ERRORLEVEL] [-i|--input] INPUT [-x|--exclude EXCLUDE] [-o|--output] OUTPUT [-S|--timestamp] [-P|--pot] 1111s 1111s Convert XLIFF localization files to Gettext PO localization files. See: 1111s http://docs.translatehouse.org/projects/translate- 1111s toolkit/en/latest/commands/xliff2po.html for examples and usage instructions. 1111s 1111s Options: 1111s --version show program's version number and exit 1111s -h, --help show this help message and exit 1111s --manpage output a manpage based on the help 1111s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1111s --errorlevel=ERRORLEVEL 1111s show errorlevel as: none, message, exception, 1111s traceback 1111s -i INPUT, --input=INPUT 1111s read from INPUT in xlf, xliff formats 1111s -x EXCLUDE, --exclude=EXCLUDE 1111s exclude names matching EXCLUDE from input paths 1111s -o OUTPUT, --output=OUTPUT 1111s write to OUTPUT in po, pot formats 1111s -S, --timestamp skip conversion if the output file has newer timestamp 1111s -P, --pot output PO Templates (.pot) rather than PO files (.po) 1111s --duplicates=DUPLICATESTYLE 1111s what to do with duplicate strings (identical source 1111s text): merge, msgctxt (default: 'msgctxt') 1111s ========= SMOKE TEST: /usr/bin/yaml2po =========== 1111s 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] 1111s 1111s Convert YAML files to Gettext PO localization files. See: 1111s http://docs.translatehouse.org/projects/translate- 1111s toolkit/en/latest/commands/yaml2po.html for examples and usage instructions. 1111s 1111s Options: 1111s --version show program's version number and exit 1111s -h, --help show this help message and exit 1111s --manpage output a manpage based on the help 1111s --progress=PROGRESS show progress as: dots, none, bar, names, verbose 1111s --errorlevel=ERRORLEVEL 1111s show errorlevel as: none, message, exception, 1111s traceback 1111s -i INPUT, --input=INPUT 1111s read from INPUT in yaml, yml formats 1111s -x EXCLUDE, --exclude=EXCLUDE 1111s exclude names matching EXCLUDE from input paths 1111s -o OUTPUT, --output=OUTPUT 1111s write to OUTPUT in po, pot formats 1111s -t TEMPLATE, --template=TEMPLATE 1111s read from TEMPLATE in yaml, yml formats 1111s -S, --timestamp skip conversion if the output file has newer timestamp 1111s -P, --pot output PO Templates (.pot) rather than PO files (.po) 1111s --duplicates=DUPLICATESTYLE 1111s what to do with duplicate strings (identical source 1111s text): merge, msgctxt (default: 'msgctxt') 1112s autopkgtest [11:42:23]: test translate-toolkit: -----------------------] 1112s translate-toolkit PASS 1112s autopkgtest [11:42:23]: test translate-toolkit: - - - - - - - - - - results - - - - - - - - - - 1112s autopkgtest [11:42:23]: test python3-translate: preparing testbed 1181s autopkgtest [11:43:32]: testbed dpkg architecture: amd64 1181s autopkgtest [11:43:32]: testbed apt version: 2.9.8 1181s autopkgtest [11:43:32]: @@@@@@@@@@@@@@@@@@@@ test bed setup 1181s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [73.9 kB] 1181s Get:2 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse Sources [2840 B] 1181s Get:3 http://ftpmaster.internal/ubuntu plucky-proposed/universe Sources [213 kB] 1181s Get:4 http://ftpmaster.internal/ubuntu plucky-proposed/restricted Sources [7016 B] 1181s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [30.5 kB] 1181s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 Packages [66.9 kB] 1181s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/main i386 Packages [25.6 kB] 1181s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/restricted amd64 Packages [32.6 kB] 1181s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/universe i386 Packages [84.3 kB] 1181s Get:10 http://ftpmaster.internal/ubuntu plucky-proposed/universe amd64 Packages [258 kB] 1182s Fetched 794 kB in 0s (4791 kB/s) 1182s Reading package lists... 1183s Reading package lists... 1183s Building dependency tree... 1183s Reading state information... 1184s Calculating upgrade... 1184s The following NEW packages will be installed: 1184s python3-jaraco.text 1184s The following packages will be upgraded: 1184s python3-pkg-resources python3-setuptools 1184s 2 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. 1184s Need to get 802 kB of archives. 1184s After this operation, 12.3 kB of additional disk space will be used. 1184s Get:1 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-jaraco.text all 4.0.0-1 [11.5 kB] 1184s Get:2 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 python3-pkg-resources all 75.2.0-1 [134 kB] 1184s Get:3 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 python3-setuptools all 75.2.0-1 [657 kB] 1184s Fetched 802 kB in 0s (22.7 MB/s) 1184s Selecting previously unselected package python3-jaraco.text. 1184s (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 ... 75315 files and directories currently installed.) 1184s Preparing to unpack .../python3-jaraco.text_4.0.0-1_all.deb ... 1184s Unpacking python3-jaraco.text (4.0.0-1) ... 1184s Preparing to unpack .../python3-pkg-resources_75.2.0-1_all.deb ... 1185s Unpacking python3-pkg-resources (75.2.0-1) over (74.1.2-1) ... 1185s Preparing to unpack .../python3-setuptools_75.2.0-1_all.deb ... 1185s Unpacking python3-setuptools (75.2.0-1) over (74.1.2-1) ... 1185s Setting up python3-pkg-resources (75.2.0-1) ... 1185s Setting up python3-jaraco.text (4.0.0-1) ... 1185s Setting up python3-setuptools (75.2.0-1) ... 1186s Reading package lists... 1186s Building dependency tree... 1186s Reading state information... 1187s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1187s Hit:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease 1187s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease 1187s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease 1187s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease 1188s Reading package lists... 1188s Reading package lists... 1188s Building dependency tree... 1188s Reading state information... 1188s Calculating upgrade... 1189s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1189s Reading package lists... 1189s Building dependency tree... 1189s Reading state information... 1189s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1190s Reading package lists... 1191s Building dependency tree... 1191s Reading state information... 1191s Starting pkgProblemResolver with broken count: 0 1191s Starting 2 pkgProblemResolver with broken count: 0 1191s Done 1191s The following additional packages will be installed: 1191s dictionaries-common emacsen-common gettext hunspell-en-us libapr1t64 1191s libaprutil1t64 libaspell15 libenchant-2-2 libexttextcat-data libgomp1 1191s libhunspell-1.7-0 libserf-1-1 libsvn1 libutf8proc3 libxapian30 libxslt1.1 1191s python3-aeidon python3-all python3-bs4 python3-charset-normalizer 1191s python3-cheroot python3-dateutil python3-diff-match-patch python3-enchant 1191s python3-iniconfig python3-iniparse python3-levenshtein python3-lxml 1191s python3-mistletoe python3-packaging python3-phply python3-pluggy python3-ply 1191s python3-pycountry python3-pytest python3-rapidfuzz python3-ruamel.yaml 1191s python3-ruamel.yaml.clib python3-simplejson python3-six python3-soupsieve 1191s python3-syrupy python3-translate python3-vobject python3-wcwidth 1191s python3-xapian subversion 1191s Suggested packages: 1191s ispell | aspell | hunspell wordlist autopoint gettext-doc libasprintf-dev 1191s libgettextpo-dev hunspell openoffice.org-hunspell | openoffice.org-core 1191s aspell libenchant-2-voikko xapian-tools python-charset-normalizer-doc 1191s python-lxml-doc python-ply-doc python-rapidfuzz-doc python3-subversion 1191s translate-toolkit-doc xapian-doc db5.3-util libapache2-mod-svn 1191s subversion-tools 1191s Recommended packages: 1191s aspell-en | aspell-dictionary | aspell6a-dictionary enchant-2 1191s python3-cssselect python3-html5lib python3-tz 1191s The following NEW packages will be installed: 1191s autopkgtest-satdep dictionaries-common emacsen-common gettext hunspell-en-us 1191s libapr1t64 libaprutil1t64 libaspell15 libenchant-2-2 libexttextcat-data 1191s libgomp1 libhunspell-1.7-0 libserf-1-1 libsvn1 libutf8proc3 libxapian30 1191s libxslt1.1 python3-aeidon python3-all python3-bs4 python3-charset-normalizer 1191s python3-cheroot python3-dateutil python3-diff-match-patch python3-enchant 1191s python3-iniconfig python3-iniparse python3-levenshtein python3-lxml 1191s python3-mistletoe python3-packaging python3-phply python3-pluggy python3-ply 1191s python3-pycountry python3-pytest python3-rapidfuzz python3-ruamel.yaml 1191s python3-ruamel.yaml.clib python3-simplejson python3-six python3-soupsieve 1191s python3-syrupy python3-translate python3-vobject python3-wcwidth 1191s python3-xapian subversion 1191s 0 upgraded, 48 newly installed, 0 to remove and 0 not upgraded. 1191s Need to get 11.8 MB/11.8 MB of archives. 1191s After this operation, 54.7 MB of additional disk space will be used. 1191s Get:1 /tmp/autopkgtest.5UDgDC/2-autopkgtest-satdep.deb autopkgtest-satdep amd64 0 [896 B] 1191s Get:2 http://ftpmaster.internal/ubuntu plucky/main amd64 emacsen-common all 3.0.5 [12.1 kB] 1191s Get:3 http://ftpmaster.internal/ubuntu plucky/main amd64 dictionaries-common all 1.29.7 [188 kB] 1191s Get:4 http://ftpmaster.internal/ubuntu plucky/main amd64 libgomp1 amd64 14.2.0-7ubuntu1 [148 kB] 1191s Get:5 http://ftpmaster.internal/ubuntu plucky/main amd64 gettext amd64 0.22.5-2 [948 kB] 1191s Get:6 http://ftpmaster.internal/ubuntu plucky/main amd64 hunspell-en-us all 1:2020.12.07-2 [280 kB] 1191s Get:7 http://ftpmaster.internal/ubuntu plucky/main amd64 libapr1t64 amd64 1.7.2-3.2ubuntu1 [108 kB] 1191s Get:8 http://ftpmaster.internal/ubuntu plucky/main amd64 libaprutil1t64 amd64 1.6.3-3ubuntu1 [92.8 kB] 1191s Get:9 http://ftpmaster.internal/ubuntu plucky/main amd64 libaspell15 amd64 0.60.8.1-1build1 [323 kB] 1191s Get:10 http://ftpmaster.internal/ubuntu plucky/main amd64 libhunspell-1.7-0 amd64 1.7.2+really1.7.2-10build3 [294 kB] 1191s Get:11 http://ftpmaster.internal/ubuntu plucky/main amd64 libenchant-2-2 amd64 2.3.3-2build2 [51.4 kB] 1191s Get:12 http://ftpmaster.internal/ubuntu plucky/main amd64 libexttextcat-data all 3.4.7-1build1 [193 kB] 1191s Get:13 http://ftpmaster.internal/ubuntu plucky/universe amd64 libserf-1-1 amd64 1.3.10-3ubuntu1 [48.2 kB] 1191s Get:14 http://ftpmaster.internal/ubuntu plucky/universe amd64 libutf8proc3 amd64 2.9.0-1build1 [70.6 kB] 1191s Get:15 http://ftpmaster.internal/ubuntu plucky/universe amd64 libsvn1 amd64 1.14.4-2 [1353 kB] 1191s Get:16 http://ftpmaster.internal/ubuntu plucky/universe amd64 libxapian30 amd64 1.4.25-1 [718 kB] 1191s Get:17 http://ftpmaster.internal/ubuntu plucky/main amd64 libxslt1.1 amd64 1.1.39-0exp1ubuntu1 [169 kB] 1191s Get:18 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-aeidon all 1.15-1 [231 kB] 1191s Get:19 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-all amd64 3.12.6-0ubuntu1 [886 B] 1191s Get:20 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-soupsieve all 2.6-1 [33.0 kB] 1191s Get:21 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-bs4 all 4.12.3-3 [109 kB] 1191s Get:22 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-charset-normalizer amd64 3.3.2-2 [118 kB] 1191s Get:23 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-cheroot all 10.0.0+ds1-2 [73.0 kB] 1191s Get:24 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-six all 1.16.0-7 [13.1 kB] 1191s Get:25 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-dateutil all 2.9.0-2 [80.3 kB] 1191s Get:26 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-diff-match-patch all 20230430-1 [33.1 kB] 1191s Get:27 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-enchant all 3.2.2-1 [34.0 kB] 1191s Get:28 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-iniconfig all 1.1.1-2 [6024 B] 1191s Get:29 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-rapidfuzz amd64 3.9.4+ds-1 [2028 kB] 1192s Get:30 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-levenshtein amd64 0.25.1-3 [120 kB] 1192s Get:31 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-lxml amd64 5.3.0-1 [1282 kB] 1192s Get:32 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-mistletoe all 1.3.0-1 [38.0 kB] 1192s Get:33 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-packaging all 24.1-1 [41.4 kB] 1192s Get:34 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-ply all 3.11-7 [45.4 kB] 1192s Get:35 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-phply all 1.2.6-1 [50.5 kB] 1192s Get:36 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-pluggy all 1.5.0-1 [21.0 kB] 1192s Get:37 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-pytest all 8.3.2-1 [251 kB] 1192s Get:38 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-ruamel.yaml.clib amd64 0.2.8+ds-2 [138 kB] 1192s Get:39 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-ruamel.yaml all 0.18.6+ds-3 [126 kB] 1192s Get:40 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-simplejson amd64 3.19.2-1build2 [54.5 kB] 1192s Get:41 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-syrupy all 4.6.1-1 [42.8 kB] 1192s Get:42 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-wcwidth all 0.2.13+dfsg1-1 [26.3 kB] 1192s Get:43 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-translate all 3.13.2-2 [319 kB] 1192s Get:44 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-vobject all 0.9.6.1-2 [40.6 kB] 1192s Get:45 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-xapian amd64 1.4.25-1build3 [441 kB] 1192s Get:46 http://ftpmaster.internal/ubuntu plucky/universe amd64 subversion amd64 1.14.4-2 [914 kB] 1192s Get:47 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-iniparse all 0.5-2 [20.0 kB] 1192s Get:48 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-pycountry all 24.6.1+ds1-1 [30.0 kB] 1192s Preconfiguring packages ... 1192s Fetched 11.8 MB in 0s (63.6 MB/s) 1192s Selecting previously unselected package emacsen-common. 1192s (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 ... 75324 files and directories currently installed.) 1192s Preparing to unpack .../00-emacsen-common_3.0.5_all.deb ... 1192s Unpacking emacsen-common (3.0.5) ... 1192s Selecting previously unselected package dictionaries-common. 1192s Preparing to unpack .../01-dictionaries-common_1.29.7_all.deb ... 1192s Adding 'diversion of /usr/share/dict/words to /usr/share/dict/words.pre-dictionaries-common by dictionaries-common' 1192s Unpacking dictionaries-common (1.29.7) ... 1192s Selecting previously unselected package libgomp1:amd64. 1192s Preparing to unpack .../02-libgomp1_14.2.0-7ubuntu1_amd64.deb ... 1192s Unpacking libgomp1:amd64 (14.2.0-7ubuntu1) ... 1192s Selecting previously unselected package gettext. 1192s Preparing to unpack .../03-gettext_0.22.5-2_amd64.deb ... 1192s Unpacking gettext (0.22.5-2) ... 1192s Selecting previously unselected package hunspell-en-us. 1192s Preparing to unpack .../04-hunspell-en-us_1%3a2020.12.07-2_all.deb ... 1192s Unpacking hunspell-en-us (1:2020.12.07-2) ... 1192s Selecting previously unselected package libapr1t64:amd64. 1192s Preparing to unpack .../05-libapr1t64_1.7.2-3.2ubuntu1_amd64.deb ... 1192s Unpacking libapr1t64:amd64 (1.7.2-3.2ubuntu1) ... 1192s Selecting previously unselected package libaprutil1t64:amd64. 1192s Preparing to unpack .../06-libaprutil1t64_1.6.3-3ubuntu1_amd64.deb ... 1192s Unpacking libaprutil1t64:amd64 (1.6.3-3ubuntu1) ... 1192s Selecting previously unselected package libaspell15:amd64. 1192s Preparing to unpack .../07-libaspell15_0.60.8.1-1build1_amd64.deb ... 1192s Unpacking libaspell15:amd64 (0.60.8.1-1build1) ... 1192s Selecting previously unselected package libhunspell-1.7-0:amd64. 1192s Preparing to unpack .../08-libhunspell-1.7-0_1.7.2+really1.7.2-10build3_amd64.deb ... 1192s Unpacking libhunspell-1.7-0:amd64 (1.7.2+really1.7.2-10build3) ... 1192s Selecting previously unselected package libenchant-2-2:amd64. 1192s Preparing to unpack .../09-libenchant-2-2_2.3.3-2build2_amd64.deb ... 1192s Unpacking libenchant-2-2:amd64 (2.3.3-2build2) ... 1192s Selecting previously unselected package libexttextcat-data. 1192s Preparing to unpack .../10-libexttextcat-data_3.4.7-1build1_all.deb ... 1192s Unpacking libexttextcat-data (3.4.7-1build1) ... 1192s Selecting previously unselected package libserf-1-1:amd64. 1192s Preparing to unpack .../11-libserf-1-1_1.3.10-3ubuntu1_amd64.deb ... 1192s Unpacking libserf-1-1:amd64 (1.3.10-3ubuntu1) ... 1192s Selecting previously unselected package libutf8proc3:amd64. 1192s Preparing to unpack .../12-libutf8proc3_2.9.0-1build1_amd64.deb ... 1192s Unpacking libutf8proc3:amd64 (2.9.0-1build1) ... 1192s Selecting previously unselected package libsvn1:amd64. 1192s Preparing to unpack .../13-libsvn1_1.14.4-2_amd64.deb ... 1192s Unpacking libsvn1:amd64 (1.14.4-2) ... 1192s Selecting previously unselected package libxapian30:amd64. 1192s Preparing to unpack .../14-libxapian30_1.4.25-1_amd64.deb ... 1192s Unpacking libxapian30:amd64 (1.4.25-1) ... 1193s Selecting previously unselected package libxslt1.1:amd64. 1193s Preparing to unpack .../15-libxslt1.1_1.1.39-0exp1ubuntu1_amd64.deb ... 1193s Unpacking libxslt1.1:amd64 (1.1.39-0exp1ubuntu1) ... 1193s Selecting previously unselected package python3-aeidon. 1193s Preparing to unpack .../16-python3-aeidon_1.15-1_all.deb ... 1193s Unpacking python3-aeidon (1.15-1) ... 1193s Selecting previously unselected package python3-all. 1193s Preparing to unpack .../17-python3-all_3.12.6-0ubuntu1_amd64.deb ... 1193s Unpacking python3-all (3.12.6-0ubuntu1) ... 1193s Selecting previously unselected package python3-soupsieve. 1193s Preparing to unpack .../18-python3-soupsieve_2.6-1_all.deb ... 1193s Unpacking python3-soupsieve (2.6-1) ... 1193s Selecting previously unselected package python3-bs4. 1193s Preparing to unpack .../19-python3-bs4_4.12.3-3_all.deb ... 1193s Unpacking python3-bs4 (4.12.3-3) ... 1193s Selecting previously unselected package python3-charset-normalizer. 1193s Preparing to unpack .../20-python3-charset-normalizer_3.3.2-2_amd64.deb ... 1193s Unpacking python3-charset-normalizer (3.3.2-2) ... 1193s Selecting previously unselected package python3-cheroot. 1193s Preparing to unpack .../21-python3-cheroot_10.0.0+ds1-2_all.deb ... 1193s Unpacking python3-cheroot (10.0.0+ds1-2) ... 1193s Selecting previously unselected package python3-six. 1193s Preparing to unpack .../22-python3-six_1.16.0-7_all.deb ... 1193s Unpacking python3-six (1.16.0-7) ... 1193s Selecting previously unselected package python3-dateutil. 1193s Preparing to unpack .../23-python3-dateutil_2.9.0-2_all.deb ... 1193s Unpacking python3-dateutil (2.9.0-2) ... 1193s Selecting previously unselected package python3-diff-match-patch. 1193s Preparing to unpack .../24-python3-diff-match-patch_20230430-1_all.deb ... 1193s Unpacking python3-diff-match-patch (20230430-1) ... 1193s Selecting previously unselected package python3-enchant. 1193s Preparing to unpack .../25-python3-enchant_3.2.2-1_all.deb ... 1193s Unpacking python3-enchant (3.2.2-1) ... 1193s Selecting previously unselected package python3-iniconfig. 1193s Preparing to unpack .../26-python3-iniconfig_1.1.1-2_all.deb ... 1193s Unpacking python3-iniconfig (1.1.1-2) ... 1193s Selecting previously unselected package python3-rapidfuzz. 1193s Preparing to unpack .../27-python3-rapidfuzz_3.9.4+ds-1_amd64.deb ... 1193s Unpacking python3-rapidfuzz (3.9.4+ds-1) ... 1193s Selecting previously unselected package python3-levenshtein. 1193s Preparing to unpack .../28-python3-levenshtein_0.25.1-3_amd64.deb ... 1193s Unpacking python3-levenshtein (0.25.1-3) ... 1193s Selecting previously unselected package python3-lxml:amd64. 1193s Preparing to unpack .../29-python3-lxml_5.3.0-1_amd64.deb ... 1193s Unpacking python3-lxml:amd64 (5.3.0-1) ... 1193s Selecting previously unselected package python3-mistletoe. 1193s Preparing to unpack .../30-python3-mistletoe_1.3.0-1_all.deb ... 1193s Unpacking python3-mistletoe (1.3.0-1) ... 1193s Selecting previously unselected package python3-packaging. 1193s Preparing to unpack .../31-python3-packaging_24.1-1_all.deb ... 1193s Unpacking python3-packaging (24.1-1) ... 1193s Selecting previously unselected package python3-ply. 1193s Preparing to unpack .../32-python3-ply_3.11-7_all.deb ... 1193s Unpacking python3-ply (3.11-7) ... 1193s Selecting previously unselected package python3-phply. 1193s Preparing to unpack .../33-python3-phply_1.2.6-1_all.deb ... 1193s Unpacking python3-phply (1.2.6-1) ... 1193s Selecting previously unselected package python3-pluggy. 1193s Preparing to unpack .../34-python3-pluggy_1.5.0-1_all.deb ... 1193s Unpacking python3-pluggy (1.5.0-1) ... 1193s Selecting previously unselected package python3-pytest. 1193s Preparing to unpack .../35-python3-pytest_8.3.2-1_all.deb ... 1193s Unpacking python3-pytest (8.3.2-1) ... 1193s Selecting previously unselected package python3-ruamel.yaml.clib:amd64. 1193s Preparing to unpack .../36-python3-ruamel.yaml.clib_0.2.8+ds-2_amd64.deb ... 1193s Unpacking python3-ruamel.yaml.clib:amd64 (0.2.8+ds-2) ... 1193s Selecting previously unselected package python3-ruamel.yaml. 1193s Preparing to unpack .../37-python3-ruamel.yaml_0.18.6+ds-3_all.deb ... 1193s Unpacking python3-ruamel.yaml (0.18.6+ds-3) ... 1193s Selecting previously unselected package python3-simplejson. 1193s Preparing to unpack .../38-python3-simplejson_3.19.2-1build2_amd64.deb ... 1193s Unpacking python3-simplejson (3.19.2-1build2) ... 1193s Selecting previously unselected package python3-syrupy. 1193s Preparing to unpack .../39-python3-syrupy_4.6.1-1_all.deb ... 1193s Unpacking python3-syrupy (4.6.1-1) ... 1193s Selecting previously unselected package python3-wcwidth. 1193s Preparing to unpack .../40-python3-wcwidth_0.2.13+dfsg1-1_all.deb ... 1193s Unpacking python3-wcwidth (0.2.13+dfsg1-1) ... 1193s Selecting previously unselected package python3-translate. 1193s Preparing to unpack .../41-python3-translate_3.13.2-2_all.deb ... 1193s Unpacking python3-translate (3.13.2-2) ... 1193s Selecting previously unselected package python3-vobject. 1193s Preparing to unpack .../42-python3-vobject_0.9.6.1-2_all.deb ... 1193s Unpacking python3-vobject (0.9.6.1-2) ... 1193s Selecting previously unselected package python3-xapian. 1193s Preparing to unpack .../43-python3-xapian_1.4.25-1build3_amd64.deb ... 1193s Unpacking python3-xapian (1.4.25-1build3) ... 1193s Selecting previously unselected package subversion. 1193s Preparing to unpack .../44-subversion_1.14.4-2_amd64.deb ... 1194s Unpacking subversion (1.14.4-2) ... 1194s Selecting previously unselected package python3-iniparse. 1194s Preparing to unpack .../45-python3-iniparse_0.5-2_all.deb ... 1194s Unpacking python3-iniparse (0.5-2) ... 1194s Selecting previously unselected package python3-pycountry. 1194s Preparing to unpack .../46-python3-pycountry_24.6.1+ds1-1_all.deb ... 1194s Unpacking python3-pycountry (24.6.1+ds1-1) ... 1194s Selecting previously unselected package autopkgtest-satdep. 1194s Preparing to unpack .../47-2-autopkgtest-satdep.deb ... 1194s Unpacking autopkgtest-satdep (0) ... 1194s Setting up python3-iniconfig (1.1.1-2) ... 1194s Setting up libxapian30:amd64 (1.4.25-1) ... 1194s Setting up python3-rapidfuzz (3.9.4+ds-1) ... 1194s Setting up python3-diff-match-patch (20230430-1) ... 1194s Setting up python3-aeidon (1.15-1) ... 1194s Setting up libutf8proc3:amd64 (2.9.0-1build1) ... 1194s Setting up libaspell15:amd64 (0.60.8.1-1build1) ... 1194s Setting up python3-charset-normalizer (3.3.2-2) ... 1194s Setting up python3-ply (3.11-7) ... 1195s Setting up python3-ruamel.yaml.clib:amd64 (0.2.8+ds-2) ... 1195s Setting up python3-all (3.12.6-0ubuntu1) ... 1195s Setting up libgomp1:amd64 (14.2.0-7ubuntu1) ... 1195s Setting up python3-six (1.16.0-7) ... 1195s Setting up python3-simplejson (3.19.2-1build2) ... 1195s Setting up python3-packaging (24.1-1) ... 1195s Setting up python3-wcwidth (0.2.13+dfsg1-1) ... 1195s Setting up emacsen-common (3.0.5) ... 1195s Setting up python3-cheroot (10.0.0+ds1-2) ... 1195s Setting up python3-pycountry (24.6.1+ds1-1) ... 1195s Setting up python3-xapian (1.4.25-1build3) ... 1196s Setting up python3-pluggy (1.5.0-1) ... 1196s Setting up python3-ruamel.yaml (0.18.6+ds-3) ... 1196s Setting up python3-mistletoe (1.3.0-1) ... 1196s Setting up libexttextcat-data (3.4.7-1build1) ... 1196s Setting up libapr1t64:amd64 (1.7.2-3.2ubuntu1) ... 1196s Setting up libxslt1.1:amd64 (1.1.39-0exp1ubuntu1) ... 1196s Setting up python3-dateutil (2.9.0-2) ... 1196s Setting up python3-levenshtein (0.25.1-3) ... 1196s Setting up libhunspell-1.7-0:amd64 (1.7.2+really1.7.2-10build3) ... 1196s Setting up python3-soupsieve (2.6-1) ... 1196s Setting up python3-iniparse (0.5-2) ... 1196s Setting up libaprutil1t64:amd64 (1.6.3-3ubuntu1) ... 1196s Setting up python3-vobject (0.9.6.1-2) ... 1197s /usr/lib/python3/dist-packages/vobject/base.py:736: SyntaxWarning: invalid escape sequence '\-' 1197s patterns['name'] = '[a-zA-Z0-9\-_]+' 1197s /usr/lib/python3/dist-packages/vobject/base.py:1219: SyntaxWarning: invalid escape sequence '\;' 1197s s = s.replace("\\", "\\\\").replace(";", "\;").replace(",", "\,") 1197s /usr/lib/python3/dist-packages/vobject/base.py:1219: SyntaxWarning: invalid escape sequence '\,' 1197s s = s.replace("\\", "\\\\").replace(";", "\;").replace(",", "\,") 1197s /usr/lib/python3/dist-packages/vobject/hcalendar.py:1: SyntaxWarning: invalid escape sequence '\,' 1197s """ 1197s Setting up gettext (0.22.5-2) ... 1197s Setting up python3-phply (1.2.6-1) ... 1197s Setting up dictionaries-common (1.29.7) ... 1197s Setting up python3-pytest (8.3.2-1) ... 1197s Setting up python3-syrupy (4.6.1-1) ... 1198s Setting up libserf-1-1:amd64 (1.3.10-3ubuntu1) ... 1198s Setting up python3-bs4 (4.12.3-3) ... 1198s Setting up python3-lxml:amd64 (5.3.0-1) ... 1198s Setting up hunspell-en-us (1:2020.12.07-2) ... 1198s Setting up libsvn1:amd64 (1.14.4-2) ... 1198s Setting up libenchant-2-2:amd64 (2.3.3-2build2) ... 1198s Setting up subversion (1.14.4-2) ... 1198s Setting up python3-enchant (3.2.2-1) ... 1198s Setting up python3-translate (3.13.2-2) ... 1198s Setting up autopkgtest-satdep (0) ... 1198s Processing triggers for man-db (2.12.1-3) ... 1200s Processing triggers for install-info (7.1.1-1) ... 1200s Processing triggers for libc-bin (2.40-1ubuntu3) ... 1200s Processing triggers for dictionaries-common (1.29.7) ... 1203s (Reading database ... 78834 files and directories currently installed.) 1203s Removing autopkgtest-satdep (0) ... 1203s autopkgtest [11:43:54]: test python3-translate: [----------------------- 1204s ============================= test session starts ============================== 1204s platform linux -- Python 3.12.7, pytest-8.3.2, pluggy-1.5.0 -- /usr/bin/python3.12 1204s cachedir: .pytest_cache 1204s rootdir: /tmp/autopkgtest.5UDgDC/autopkgtest_tmp 1204s plugins: typeguard-4.3.0, syrupy-4.6.1 1209s collecting ... collected 3340 items / 2 skipped 1209s 1209s tests/odf_xliff/test_odf_xliff.py::test_odf2xliff PASSED [ 0%] 1209s tests/odf_xliff/test_odf_xliff.py::test_roundtrip PASSED [ 0%] 1209s tests/odf_xliff/test_odf_xliff.py::test_odf2xliff2_inline PASSED [ 0%] 1209s tests/translate/convert/test_accesskey.py::test_get_label_and_accesskey PASSED [ 0%] 1209s tests/translate/convert/test_accesskey.py::test_extract_bad_accesskeys PASSED [ 0%] 1209s tests/translate/convert/test_accesskey.py::test_ignore_entities PASSED [ 0%] 1209s tests/translate/convert/test_accesskey.py::test_alternate_accesskey_marker PASSED [ 0%] 1209s tests/translate/convert/test_accesskey.py::test_unicode PASSED [ 0%] 1209s tests/translate/convert/test_accesskey.py::test_numeric PASSED [ 0%] 1209s tests/translate/convert/test_accesskey.py::test_empty_string PASSED [ 0%] 1209s tests/translate/convert/test_accesskey.py::test_end_of_string PASSED [ 0%] 1209s tests/translate/convert/test_accesskey.py::test_combine_label_accesskey PASSED [ 0%] 1209s tests/translate/convert/test_accesskey.py::test_combine_label_accesskey_different_capitals PASSED [ 0%] 1209s tests/translate/convert/test_accesskey.py::test_uncombinable PASSED [ 0%] 1209s tests/translate/convert/test_accesskey.py::test_accesskey_already_in_text PASSED [ 0%] 1209s tests/translate/convert/test_android2po.py::TestAndroid2PO::test_no_template_units PASSED [ 0%] 1209s tests/translate/convert/test_android2po.py::TestAndroid2PO::test_template_units PASSED [ 0%] 1209s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_no_template_units PASSED [ 0%] 1209s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_template_units PASSED [ 0%] 1209s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_help PASSED [ 0%] 1209s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_convertandroid PASSED [ 0%] 1209s tests/translate/convert/test_convert.py::TestConvertCommand::test_help PASSED [ 0%] 1209s tests/translate/convert/test_csv2po.py::test_replacestrings PASSED [ 0%] 1209s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_simpleentity PASSED [ 0%] 1209s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_simpleentity_with_template PASSED [ 0%] 1209s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_newlines PASSED [ 0%] 1209s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_tabs PASSED [ 0%] 1209s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_quotes PASSED [ 0%] 1209s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_empties PASSED [ 0%] 1209s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_kdecomment PASSED [ 0%] 1209s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_escaped_newlines PASSED [ 0%] 1209s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_simpleentity PASSED [ 0%] 1209s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_simpleentity_with_template PASSED [ 0%] 1209s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_newlines PASSED [ 1%] 1209s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_tabs PASSED [ 1%] 1209s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_quotes PASSED [ 1%] 1209s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_empties PASSED [ 1%] 1209s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_kdecomment PASSED [ 1%] 1209s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_escaped_newlines PASSED [ 1%] 1209s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_help PASSED [ 1%] 1209s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder PASSED [ 1%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_simpleentity PASSED [ 1%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_convertdtd PASSED [ 1%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_apos PASSED [ 1%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_quotes PASSED [ 1%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_emptyentity PASSED [ 1%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_two_empty_entities PASSED [ 1%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_emptyentity_translated PASSED [ 1%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_localisaton_note_simple PASSED [ 1%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_localisation_note_merge PASSED [ 1%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_simple PASSED [ 1%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_label PASSED [ 1%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_onlyentity PASSED [ 1%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_commentedout PASSED [ 1%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_spaces_at_start_of_dtd_lines PASSED [ 1%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accesskeys_folding PASSED [ 1%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accesskeys_mismatch PASSED [ 1%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_carriage_return_in_multiline_dtd PASSED [ 1%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_multiline_with_blankline PASSED [ 1%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_multiline_closing_quotes PASSED [ 1%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_preserving_spaces PASSED [ 1%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_escaping_newline_tabs PASSED [ 1%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_abandoned_accelerator PASSED [ 1%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_unassociable_accelerator PASSED [ 1%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_changed_labels_and_accelerators PASSED [ 1%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accelerator_keys_not_in_sentence XFAIL [ 1%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_exclude_entity_includes PASSED [ 2%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_linewraps PASSED [ 2%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_merging_with_new_untranslated PASSED [ 2%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_merge_without_template PASSED [ 2%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_simpleentity PASSED [ 2%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_convertdtd PASSED [ 2%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_apos PASSED [ 2%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_quotes PASSED [ 2%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_emptyentity PASSED [ 2%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_two_empty_entities PASSED [ 2%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_emptyentity_translated PASSED [ 2%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_localisaton_note_simple PASSED [ 2%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_localisation_note_merge PASSED [ 2%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_simple PASSED [ 2%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_label PASSED [ 2%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_onlyentity PASSED [ 2%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_commentedout PASSED [ 2%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_spaces_at_start_of_dtd_lines PASSED [ 2%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accesskeys_folding PASSED [ 2%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accesskeys_mismatch PASSED [ 2%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_carriage_return_in_multiline_dtd PASSED [ 2%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_multiline_with_blankline PASSED [ 2%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_multiline_closing_quotes PASSED [ 2%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_preserving_spaces PASSED [ 2%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_escaping_newline_tabs PASSED [ 2%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_abandoned_accelerator PASSED [ 2%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_unassociable_accelerator PASSED [ 2%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_changed_labels_and_accelerators PASSED [ 2%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accelerator_keys_not_in_sentence XFAIL [ 2%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_exclude_entity_includes PASSED [ 2%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_linewraps PASSED [ 2%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_merging_with_new_untranslated PASSED [ 2%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_merge_without_template PASSED [ 2%] 1209s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_help PASSED [ 2%] 1209s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_defaults PASSED [ 3%] 1209s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_root_name PASSED [ 3%] 1209s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_value_name PASSED [ 3%] 1209s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_key PASSED [ 3%] 1209s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_default_namespace PASSED [ 3%] 1209s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_namespace_prefix PASSED [ 3%] 1209s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_all_parameters PASSED [ 3%] 1209s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_empty_file_is_empty_store PASSED [ 3%] 1209s tests/translate/convert/test_flatxml2po.py::TestFlatXML2POCommand::test_help PASSED [ 3%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_extract_lang_attribute_from_html_tag PASSED [ 3%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_do_not_extract_lang_attribute_from_tags_other_than_html PASSED [ 3%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_title PASSED [ 3%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_title_with_linebreak PASSED [ 3%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_meta PASSED [ 3%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p PASSED [ 3%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_br PASSED [ 3%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_linebreak PASSED [ 3%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_linebreak_and_embedded_br PASSED [ 3%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_uppercase_html PASSED [ 3%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_div PASSED [ 3%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_div_with_linebreaks PASSED [ 3%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_a PASSED [ 3%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_a_with_linebreak PASSED [ 3%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_sequence_of_anchor_elements PASSED [ 3%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_img PASSED [ 3%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_img_empty PASSED [ 3%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_img_inside_a PASSED [ 3%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_table_summary PASSED [ 3%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_simple PASSED [ 3%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_complex PASSED [ 3%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_empty PASSED [ 3%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_address PASSED [ 3%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_headings PASSED [ 3%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_headings_with_linebreaks PASSED [ 4%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_dt PASSED [ 4%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_dd PASSED [ 4%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_span PASSED [ 4%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_ul PASSED [ 4%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_nested_lists PASSED [ 4%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_duplicates PASSED [ 4%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_multiline_reflow PASSED [ 4%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_nested_tags PASSED [ 4%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_carriage_return PASSED [ 4%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_encoding_latin1 PASSED [ 4%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_strip_html PASSED [ 4%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_entityrefs_in_text PASSED [ 4%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_entityrefs_in_attributes PASSED [ 4%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_charrefs PASSED [ 4%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php PASSED [ 4%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_multiple_php PASSED [ 4%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php_multiline PASSED [ 4%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php_with_embedded_html PASSED [ 4%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_comments PASSED [ 4%] 1209s tests/translate/convert/test_html2po.py::TestHTML2PO::test_attribute_without_value PASSED [ 4%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_extract_lang_attribute_from_html_tag PASSED [ 4%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_do_not_extract_lang_attribute_from_tags_other_than_html PASSED [ 4%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_title PASSED [ 4%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_title_with_linebreak PASSED [ 4%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_meta PASSED [ 4%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p PASSED [ 4%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_br PASSED [ 4%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_linebreak PASSED [ 4%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_linebreak_and_embedded_br PASSED [ 4%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_uppercase_html PASSED [ 4%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_div PASSED [ 4%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_div_with_linebreaks PASSED [ 4%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_a PASSED [ 5%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_a_with_linebreak PASSED [ 5%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_sequence_of_anchor_elements PASSED [ 5%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_img PASSED [ 5%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_img_empty PASSED [ 5%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_img_inside_a PASSED [ 5%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_table_summary PASSED [ 5%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_simple PASSED [ 5%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_complex PASSED [ 5%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_empty PASSED [ 5%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_address PASSED [ 5%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_headings PASSED [ 5%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_headings_with_linebreaks PASSED [ 5%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_dt PASSED [ 5%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_dd PASSED [ 5%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_span PASSED [ 5%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_ul PASSED [ 5%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_nested_lists PASSED [ 5%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_duplicates PASSED [ 5%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multiline_reflow PASSED [ 5%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_nested_tags PASSED [ 5%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_carriage_return PASSED [ 5%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_encoding_latin1 PASSED [ 5%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_strip_html PASSED [ 5%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_entityrefs_in_text PASSED [ 5%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_entityrefs_in_attributes PASSED [ 5%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_charrefs PASSED [ 5%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php PASSED [ 5%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multiple_php PASSED [ 5%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php_multiline PASSED [ 5%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php_with_embedded_html PASSED [ 5%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_comments PASSED [ 5%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_attribute_without_value PASSED [ 5%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_help PASSED [ 5%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_single PASSED [ 6%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_onefile PASSED [ 6%] 1209s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_onefile_to_stdout PASSED [ 6%] 1209s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_convert_empty_file PASSED [ 6%] 1209s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_no_translations PASSED [ 6%] 1209s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_summary PASSED [ 6%] 1209s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_description PASSED [ 6%] 1209s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_location PASSED [ 6%] 1209s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_comment PASSED [ 6%] 1209s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_no_template_duplicate_style PASSED [ 6%] 1209s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge PASSED [ 6%] 1209s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_misaligned_files PASSED [ 6%] 1209s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_blank_msgstr PASSED [ 6%] 1209s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_duplicate_style PASSED [ 6%] 1209s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_convert_empty_file PASSED [ 6%] 1209s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_no_translations PASSED [ 6%] 1209s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_summary PASSED [ 6%] 1209s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_description PASSED [ 6%] 1209s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_location PASSED [ 6%] 1209s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_comment PASSED [ 6%] 1209s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_no_template_duplicate_style PASSED [ 6%] 1209s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge PASSED [ 6%] 1209s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_misaligned_files PASSED [ 6%] 1209s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_blank_msgstr PASSED [ 6%] 1209s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_duplicate_style PASSED [ 6%] 1209s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_help PASSED [ 6%] 1209s tests/translate/convert/test_idml2po.py::TestIDML2POCommand::test_help PASSED [ 6%] 1209s tests/translate/convert/test_idml2po.py::TestIDML2POCommand::test_convert PASSED [ 6%] 1209s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_empty_file PASSED [ 6%] 1209s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_no_translation PASSED [ 6%] 1209s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_simple PASSED [ 6%] 1209s tests/translate/convert/test_ini2po.py::TestIni2PO::test_no_duplicates PASSED [ 6%] 1209s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_simple PASSED [ 6%] 1209s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_misaligned_files PASSED [ 7%] 1209s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_blank_msgstr PASSED [ 7%] 1209s tests/translate/convert/test_ini2po.py::TestIni2PO::test_dialects_inno PASSED [ 7%] 1209s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_empty_file PASSED [ 7%] 1209s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_no_translation PASSED [ 7%] 1209s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_simple PASSED [ 7%] 1209s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_no_duplicates PASSED [ 7%] 1209s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_simple PASSED [ 7%] 1209s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_misaligned_files PASSED [ 7%] 1209s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_blank_msgstr PASSED [ 7%] 1209s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_dialects_inno PASSED [ 7%] 1209s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_help PASSED [ 7%] 1209s tests/translate/convert/test_json2po.py::TestJson2PO::test_simple PASSED [ 7%] 1209s tests/translate/convert/test_json2po.py::TestJson2PO::test_three_same_keys PASSED [ 7%] 1209s tests/translate/convert/test_json2po.py::TestJson2PO::test_filter PASSED [ 7%] 1209s tests/translate/convert/test_json2po.py::TestJson2PO::test_miltiple_units PASSED [ 7%] 1209s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_simple PASSED [ 7%] 1209s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_three_same_keys PASSED [ 7%] 1209s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_filter PASSED [ 7%] 1209s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_miltiple_units PASSED [ 7%] 1209s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_help PASSED [ 7%] 1209s tests/translate/convert/test_md2po.py::TestMD2PO::test_help PASSED [ 7%] 1209s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_file_with_multifile_single PASSED [ 7%] 1209s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_file_with_multifile_onefile PASSED [ 7%] 1209s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_directory_with_multifile_single PASSED [ 7%] 1209s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_directory_with_multifile_onefile PASSED [ 7%] 1209s tests/translate/convert/test_moz2po.py::TestMoz2POCommand::test_help PASSED [ 7%] 1209s tests/translate/convert/test_mozfunny2prop.py::TestInc2PO::test_simpleentry PASSED [ 7%] 1209s tests/translate/convert/test_mozfunny2prop.py::TestInc2PO::test_uncomment_contributors PASSED [ 7%] 1209s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_convert_empty PASSED [ 7%] 1209s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_string PASSED [ 7%] 1209s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_merge PASSED [ 7%] 1209s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_entry PASSED [ 7%] 1209s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_comment PASSED [ 7%] 1209s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_meta_tags PASSED [ 8%] 1209s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_keep_duplicates PASSED [ 8%] 1209s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_drop_duplicates PASSED [ 8%] 1209s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_convert_empty PASSED [ 8%] 1209s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_string PASSED [ 8%] 1209s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_merge PASSED [ 8%] 1209s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_entry PASSED [ 8%] 1209s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_comment PASSED [ 8%] 1209s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_meta_tags PASSED [ 8%] 1209s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_keep_duplicates PASSED [ 8%] 1209s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_drop_duplicates PASSED [ 8%] 1209s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_help PASSED [ 8%] 1209s tests/translate/convert/test_ods2xliff.py::TestODF2XLIFFCommand::test_help PASSED [ 8%] 1209s tests/translate/convert/test_ods2xliff.py::TestODF2XLIFFCommand::test_convert PASSED [ 8%] 1209s tests/translate/convert/test_oo2po.py::TestOO2PO::test_simpleentity PASSED [ 8%] 1209s tests/translate/convert/test_oo2po.py::TestOO2PO::test_escapes PASSED [ 8%] 1209s tests/translate/convert/test_oo2po.py::TestOO2PO::test_roundtrip_escape PASSED [ 8%] 1209s tests/translate/convert/test_oo2po.py::TestOO2PO::test_roundtrip_whitespaceonly PASSED [ 8%] 1209s tests/translate/convert/test_oo2po.py::TestOO2PO::test_double_escapes PASSED [ 8%] 1209s tests/translate/convert/test_oo2po.py::TestOO2PO::test_escapes_helpcontent2 PASSED [ 8%] 1209s tests/translate/convert/test_oo2po.py::TestOO2PO::test_msgid_bug_error_address PASSED [ 8%] 1209s tests/translate/convert/test_oo2po.py::TestOO2PO::test_x_comment_inclusion PASSED [ 8%] 1209s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simpleentity PASSED [ 8%] 1209s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_escapes PASSED [ 8%] 1209s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_roundtrip_escape PASSED [ 8%] 1209s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_roundtrip_whitespaceonly PASSED [ 8%] 1209s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_double_escapes PASSED [ 8%] 1209s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_escapes_helpcontent2 PASSED [ 8%] 1209s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_msgid_bug_error_address PASSED [ 8%] 1209s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_x_comment_inclusion PASSED [ 8%] 1209s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_help PASSED [ 8%] 1209s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_preserve_filename PASSED [ 8%] 1209s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_pot PASSED [ 8%] 1209s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_po PASSED [ 9%] 1209s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_onefile_nonrecursive PASSED [ 9%] 1209s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_remove_duplicates PASSED [ 9%] 1209s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_simpleentity PASSED [ 9%] 1209s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_escapes PASSED [ 9%] 1209s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_roundtrip_escape PASSED [ 9%] 1209s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_roundtrip_whitespaceonly PASSED [ 9%] 1209s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_double_escapes PASSED [ 9%] 1210s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_escapes_helpcontent2 PASSED [ 9%] 1210s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_x_comment_inclusion PASSED [ 9%] 1210s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_msgid_bug_error_address PASSED [ 9%] 1210s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simpleentity PASSED [ 9%] 1210s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_escapes PASSED [ 9%] 1210s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_roundtrip_escape PASSED [ 9%] 1210s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_roundtrip_whitespaceonly PASSED [ 9%] 1210s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_double_escapes PASSED [ 9%] 1210s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_escapes_helpcontent2 PASSED [ 9%] 1210s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_x_comment_inclusion PASSED [ 9%] 1210s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_msgid_bug_error_address PASSED [ 9%] 1210s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_help PASSED [ 9%] 1210s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_preserve_filename PASSED [ 9%] 1210s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_xlf PASSED [ 9%] 1210s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_po PASSED [ 9%] 1210s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_onefile_nonrecursive PASSED [ 9%] 1210s tests/translate/convert/test_php2po.py::TestPhp2PO::test_simpleentry PASSED [ 9%] 1210s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphp PASSED [ 9%] 1210s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphptemplate PASSED [ 9%] 1210s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphpmissing PASSED [ 9%] 1210s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphpempty PASSED [ 9%] 1210s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unicode PASSED [ 9%] 1210s tests/translate/convert/test_php2po.py::TestPhp2PO::test_multiline PASSED [ 9%] 1210s tests/translate/convert/test_php2po.py::TestPhp2PO::test_comments_before PASSED [ 9%] 1210s tests/translate/convert/test_php2po.py::TestPhp2PO::test_emptyentry PASSED [ 9%] 1210s tests/translate/convert/test_php2po.py::TestPhp2PO::test_hash_comment_with_equals PASSED [ 10%] 1210s tests/translate/convert/test_php2po.py::TestPhp2PO::test_emptyentry_translated PASSED [ 10%] 1210s tests/translate/convert/test_php2po.py::TestPhp2PO::test_newlines_in_value PASSED [ 10%] 1210s tests/translate/convert/test_php2po.py::TestPhp2PO::test_spaces_in_name PASSED [ 10%] 1210s tests/translate/convert/test_php2po.py::TestPhp2PO::test_named_array PASSED [ 10%] 1210s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unnamed_array PASSED [ 10%] 1210s tests/translate/convert/test_php2po.py::TestPhp2PO::test_named_nested_arrays PASSED [ 10%] 1210s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unnamed_nested_arrays PASSED [ 10%] 1210s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_simpleentry PASSED [ 10%] 1210s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphp PASSED [ 10%] 1210s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphptemplate PASSED [ 10%] 1210s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphpmissing PASSED [ 10%] 1210s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphpempty PASSED [ 10%] 1210s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unicode PASSED [ 10%] 1210s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_multiline PASSED [ 10%] 1210s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_comments_before PASSED [ 10%] 1210s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_emptyentry PASSED [ 10%] 1210s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_hash_comment_with_equals PASSED [ 10%] 1210s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_emptyentry_translated PASSED [ 10%] 1210s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_newlines_in_value PASSED [ 10%] 1210s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_spaces_in_name PASSED [ 10%] 1210s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_named_array PASSED [ 10%] 1210s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unnamed_array PASSED [ 10%] 1210s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_named_nested_arrays PASSED [ 10%] 1210s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unnamed_nested_arrays PASSED [ 10%] 1210s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_help PASSED [ 10%] 1210s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_simpleentity PASSED [ 10%] 1210s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_multiline PASSED [ 10%] 1210s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapednewlines PASSED [ 10%] 1210s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedtabs PASSED [ 10%] 1210s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedquotes PASSED [ 10%] 1210s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedescape PASSED [ 10%] 1210s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_singlequotes PASSED [ 10%] 1210s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_empties PASSED [ 10%] 1210s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_kdecomments PASSED [ 11%] 1210s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_simpleentity PASSED [ 11%] 1210s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_multiline PASSED [ 11%] 1210s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapednewlines PASSED [ 11%] 1210s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedtabs PASSED [ 11%] 1210s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedquotes PASSED [ 11%] 1210s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedescape PASSED [ 11%] 1210s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_singlequotes PASSED [ 11%] 1210s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_empties PASSED [ 11%] 1210s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_kdecomments PASSED [ 11%] 1210s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_help PASSED [ 11%] 1210s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder PASSED [ 11%] 1210s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_context PASSED [ 11%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_joinlines PASSED [ 11%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_escapedstr PASSED [ 11%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_missingaccesskey PASSED [ 11%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskeycase PASSED [ 11%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_types PASSED [ 11%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_missing PASSED [ 11%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_no_accesskey PASSED [ 11%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_source_no_amp_in_target PASSED [ 11%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_both_amp_and_accesskey PASSED [ 11%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_amp_no_accesskey PASSED [ 11%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_entities_two PASSED [ 11%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_entities PASSED [ 11%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_comments_translator PASSED [ 11%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_retains_hashprefix PASSED [ 11%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_convertdtd PASSED [ 11%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_untranslated_with_template PASSED [ 11%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_untranslated_without_template PASSED [ 11%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_blank_source PASSED [ 11%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_newlines_escapes PASSED [ 11%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_simple PASSED [ 11%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_escape PASSED [ 12%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_quotes PASSED [ 12%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_amp PASSED [ 12%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_merging_entries_with_spaces_removed PASSED [ 12%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_preserving_spaces PASSED [ 12%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_preserving_spaces_after_value PASSED [ 12%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_comments PASSED [ 12%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_duplicates PASSED [ 12%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_joinlines PASSED [ 12%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_escapedstr PASSED [ 12%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_missingaccesskey PASSED [ 12%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskeycase PASSED [ 12%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_types PASSED [ 12%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_missing PASSED [ 12%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_no_accesskey PASSED [ 12%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_source_no_amp_in_target PASSED [ 12%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_both_amp_and_accesskey PASSED [ 12%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_amp_no_accesskey PASSED [ 12%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_entities_two PASSED [ 12%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_entities PASSED [ 12%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_comments_translator PASSED [ 12%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_retains_hashprefix PASSED [ 12%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_convertdtd PASSED [ 12%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_untranslated_with_template PASSED [ 12%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_untranslated_without_template PASSED [ 12%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_blank_source PASSED [ 12%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_newlines_escapes PASSED [ 12%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_simple PASSED [ 12%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_escape PASSED [ 12%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_quotes PASSED [ 12%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_amp PASSED [ 12%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_merging_entries_with_spaces_removed PASSED [ 12%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_preserving_spaces PASSED [ 12%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_preserving_spaces_after_value PASSED [ 12%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_comments PASSED [ 13%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_duplicates PASSED [ 13%] 1210s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_help PASSED [ 13%] 1210s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_defaults PASSED [ 13%] 1210s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_root_name PASSED [ 13%] 1210s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_value_name PASSED [ 13%] 1210s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_key PASSED [ 13%] 1210s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_default_namespace PASSED [ 13%] 1210s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_namespace_prefix PASSED [ 13%] 1210s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_indent_eight PASSED [ 13%] 1210s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_noindent PASSED [ 13%] 1210s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXMLCommand::test_help PASSED [ 13%] 1210s tests/translate/convert/test_po2html.py::TestPO2Html::test_simple PASSED [ 13%] 1210s tests/translate/convert/test_po2html.py::TestPO2Html::test_linebreaks PASSED [ 13%] 1210s tests/translate/convert/test_po2html.py::TestPO2Html::test_replace_substrings PASSED [ 13%] 1210s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_outside_translatable_content PASSED [ 13%] 1210s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_within_translatable_content_not_embedded PASSED [ 13%] 1210s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_embedded_within_translatable_content PASSED [ 13%] 1210s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_without_value PASSED [ 13%] 1210s tests/translate/convert/test_po2html.py::TestPO2Html::test_entities PASSED [ 13%] 1210s tests/translate/convert/test_po2html.py::TestPO2Html::test_escapes PASSED [ 13%] 1210s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_translated PASSED [ 13%] 1210s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_untranslated PASSED [ 13%] 1210s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_fuzzy PASSED [ 13%] 1210s tests/translate/convert/test_po2html.py::TestPO2Html::test_untranslated_attributes PASSED [ 13%] 1210s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_simple PASSED [ 13%] 1210s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_linebreaks PASSED [ 13%] 1210s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_replace_substrings PASSED [ 13%] 1210s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_outside_translatable_content PASSED [ 13%] 1210s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_within_translatable_content_not_embedded PASSED [ 13%] 1210s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_embedded_within_translatable_content PASSED [ 13%] 1210s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_without_value PASSED [ 13%] 1210s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_entities PASSED [ 13%] 1210s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_escapes PASSED [ 14%] 1210s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_translated PASSED [ 14%] 1210s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_untranslated PASSED [ 14%] 1210s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_fuzzy PASSED [ 14%] 1210s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_untranslated_attributes PASSED [ 14%] 1210s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_help PASSED [ 14%] 1210s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_individual_files PASSED [ 14%] 1210s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_fully_recursive PASSED [ 14%] 1210s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_input_specified PASSED [ 14%] 1210s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified PASSED [ 14%] 1210s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_output_specified PASSED [ 14%] 1210s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file PASSED [ 14%] 1210s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file_and_templates_overwritten PASSED [ 14%] 1210s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_empty_file PASSED [ 14%] 1210s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_summary PASSED [ 14%] 1210s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_description PASSED [ 14%] 1210s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_location PASSED [ 14%] 1210s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_comment PASSED [ 14%] 1210s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_complex_icalendar PASSED [ 14%] 1210s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_skip_fuzzy PASSED [ 14%] 1210s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_include_fuzzy PASSED [ 14%] 1210s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_no_template PASSED [ 14%] 1210s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_template_location_not_in_source_file PASSED [ 14%] 1210s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_completion_below_threshold PASSED [ 14%] 1210s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_completion_above_threshold PASSED [ 14%] 1210s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_empty_file PASSED [ 14%] 1210s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_summary PASSED [ 14%] 1210s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_description PASSED [ 14%] 1210s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_location PASSED [ 14%] 1210s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_comment PASSED [ 14%] 1210s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_complex_icalendar PASSED [ 14%] 1210s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_skip_fuzzy PASSED [ 14%] 1210s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_include_fuzzy PASSED [ 14%] 1210s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_no_template PASSED [ 15%] 1210s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_template_location_not_in_source_file PASSED [ 15%] 1210s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_completion_below_threshold PASSED [ 15%] 1210s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_completion_above_threshold PASSED [ 15%] 1210s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_help PASSED [ 15%] 1210s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_help PASSED [ 15%] 1210s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_convert PASSED [ 15%] 1210s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_no_templates PASSED [ 15%] 1210s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_simple PASSED [ 15%] 1210s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_space_preservation PASSED [ 15%] 1210s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_blank_entries PASSED [ 15%] 1210s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_fuzzy PASSED [ 15%] 1210s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_propertyless_template PASSED [ 15%] 1210s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_empty_value PASSED [ 15%] 1210s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_dialects_inno PASSED [ 15%] 1210s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_misaligned_files PASSED [ 15%] 1210s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_completion_below_threshold PASSED [ 15%] 1210s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_completion_above_threshold PASSED [ 15%] 1210s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_no_fuzzy PASSED [ 15%] 1210s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_allow_fuzzy PASSED [ 15%] 1210s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_missing_source PASSED [ 15%] 1210s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_repeated_locations PASSED [ 15%] 1210s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_no_templates PASSED [ 15%] 1210s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_simple PASSED [ 15%] 1210s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_space_preservation PASSED [ 15%] 1210s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_blank_entries PASSED [ 15%] 1210s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_fuzzy PASSED [ 15%] 1210s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_propertyless_template PASSED [ 15%] 1210s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_empty_value PASSED [ 15%] 1210s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_dialects_inno PASSED [ 15%] 1210s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_misaligned_files PASSED [ 15%] 1210s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_completion_below_threshold PASSED [ 15%] 1210s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_completion_above_threshold PASSED [ 15%] 1210s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_no_fuzzy PASSED [ 15%] 1210s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_allow_fuzzy PASSED [ 16%] 1210s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_missing_source PASSED [ 16%] 1210s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_repeated_locations PASSED [ 16%] 1210s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_help PASSED [ 16%] 1210s tests/translate/convert/test_po2json.py::TestPO2JSON::test_basic PASSED [ 16%] 1210s tests/translate/convert/test_po2json.py::TestPO2JSON::test_ordering_serialize PASSED [ 16%] 1210s tests/translate/convert/test_po2json.py::TestPO2JSON::test_dont_use_empty_translation PASSED [ 16%] 1210s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_false_remove_untranslated_false PASSED [ 16%] 1210s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_false_remove_untranslated_true PASSED [ 16%] 1210s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_true_remove_untranslated_false PASSED [ 16%] 1210s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_true_remove_untranslated_true PASSED [ 16%] 1210s tests/translate/convert/test_po2md.py::TestPO2MD::test_help PASSED [ 16%] 1210s tests/translate/convert/test_po2md.py::TestPO2MD::test_single_markdown_file_with_single_po PASSED [ 16%] 1210s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_with_single_po PASSED [ 16%] 1210s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_and_directory_of_po_files PASSED [ 16%] 1210s tests/translate/convert/test_po2moz.py::TestPO2MozCommand::test_help PASSED [ 16%] 1210s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_empty PASSED [ 16%] 1210s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_simple PASSED [ 16%] 1210s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_comment PASSED [ 16%] 1210s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_ok_marker PASSED [ 16%] 1210s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_completion_below_threshold PASSED [ 16%] 1210s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_completion_above_threshold PASSED [ 16%] 1210s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_skip_non_translatable_input PASSED [ 16%] 1210s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_no_fuzzy PASSED [ 16%] 1210s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_allow_fuzzy PASSED [ 16%] 1210s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_mark_active PASSED [ 16%] 1210s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_empty PASSED [ 16%] 1210s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_simple PASSED [ 16%] 1210s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_comment PASSED [ 16%] 1210s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_ok_marker PASSED [ 16%] 1210s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_completion_below_threshold PASSED [ 16%] 1210s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_completion_above_threshold PASSED [ 16%] 1210s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_skip_non_translatable_input PASSED [ 16%] 1210s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_no_fuzzy PASSED [ 17%] 1210s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_allow_fuzzy PASSED [ 17%] 1210s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_mark_active PASSED [ 17%] 1210s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_help PASSED [ 17%] 1210s tests/translate/convert/test_po2oo.py::TestPO2OO::test_convertoo PASSED [ 17%] 1210s tests/translate/convert/test_po2oo.py::TestPO2OO::test_pofilter PASSED [ 17%] 1210s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_simple PASSED [ 17%] 1210s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_escape PASSED [ 17%] 1210s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_quotes PASSED [ 17%] 1210s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_spaces PASSED [ 17%] 1210s tests/translate/convert/test_po2oo.py::TestPO2OO::test_default_timestamp PASSED [ 17%] 1210s tests/translate/convert/test_po2oo.py::TestPO2OO::test_escape_conversion PASSED [ 17%] 1210s tests/translate/convert/test_po2oo.py::TestPO2OO::test_helpcontent_escapes PASSED [ 17%] 1210s tests/translate/convert/test_po2oo.py::TestPO2OO::test_helpcontent_escapes2 PASSED [ 17%] 1210s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_convertoo PASSED [ 17%] 1210s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_pofilter PASSED [ 17%] 1210s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_simple PASSED [ 17%] 1210s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_escape PASSED [ 17%] 1210s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_quotes PASSED [ 17%] 1210s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_spaces PASSED [ 17%] 1210s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_default_timestamp PASSED [ 17%] 1210s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_escape_conversion PASSED [ 17%] 1210s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_helpcontent_escapes PASSED [ 17%] 1210s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_helpcontent_escapes2 PASSED [ 17%] 1210s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_help PASSED [ 17%] 1210s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp PASSED [ 17%] 1210s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp_notemplate PASSED [ 17%] 1210s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp_empty_template PASSED [ 17%] 1210s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_simple PASSED [ 17%] 1210s tests/translate/convert/test_po2php.py::TestPO2Php::test_space_preservation PASSED [ 17%] 1210s tests/translate/convert/test_po2php.py::TestPO2Php::test_preserve_unused_statement PASSED [ 17%] 1210s tests/translate/convert/test_po2php.py::TestPO2Php::test_not_translated_multiline PASSED [ 17%] 1210s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_blank_entries PASSED [ 17%] 1210s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_fuzzy PASSED [ 17%] 1210s tests/translate/convert/test_po2php.py::TestPO2Php::test_locations_with_spaces PASSED [ 18%] 1210s tests/translate/convert/test_po2php.py::TestPO2Php::test_inline_comments PASSED [ 18%] 1210s tests/translate/convert/test_po2php.py::TestPO2Php::test_block_comments PASSED [ 18%] 1210s tests/translate/convert/test_po2php.py::TestPO2Php::test_named_variables PASSED [ 18%] 1210s tests/translate/convert/test_po2php.py::TestPO2Php::test_multiline PASSED [ 18%] 1210s tests/translate/convert/test_po2php.py::TestPO2Php::test_hash_comment PASSED [ 18%] 1210s tests/translate/convert/test_po2php.py::TestPO2Php::test_arrays PASSED [ 18%] 1210s tests/translate/convert/test_po2php.py::TestPO2Php::test_named_nested_array PASSED [ 18%] 1210s tests/translate/convert/test_po2php.py::TestPO2Php::test_unnamed_nested_arrays PASSED [ 18%] 1210s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_propertyless_template XFAIL [ 18%] 1210s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp PASSED [ 18%] 1210s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp_notemplate PASSED [ 18%] 1210s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp_empty_template PASSED [ 18%] 1210s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_simple PASSED [ 18%] 1210s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_space_preservation PASSED [ 18%] 1210s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_preserve_unused_statement PASSED [ 18%] 1210s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_not_translated_multiline PASSED [ 18%] 1210s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_blank_entries PASSED [ 18%] 1210s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_fuzzy PASSED [ 18%] 1210s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_locations_with_spaces PASSED [ 18%] 1210s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_inline_comments PASSED [ 18%] 1210s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_block_comments PASSED [ 18%] 1210s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_named_variables PASSED [ 18%] 1210s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_multiline PASSED [ 18%] 1210s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_hash_comment PASSED [ 18%] 1210s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_arrays PASSED [ 18%] 1210s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_named_nested_array PASSED [ 18%] 1210s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_unnamed_nested_arrays PASSED [ 18%] 1210s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_propertyless_template XFAIL [ 18%] 1210s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_help PASSED [ 18%] 1210s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_simple PASSED [ 18%] 1210s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated PASSED [ 18%] 1210s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_hard_newlines_preserved PASSED [ 18%] 1210s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_space_preservation PASSED [ 19%] 1210s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_no_value PASSED [ 19%] 1210s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_no_separator PASSED [ 19%] 1210s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_blank_entries PASSED [ 19%] 1210s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_fuzzy PASSED [ 19%] 1210s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys PASSED [ 19%] 1210s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys_missing_accesskey PASSED [ 19%] 1210s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_margin_whitespace PASSED [ 19%] 1210s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_all_whitespace PASSED [ 19%] 1210s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_propertyless_template PASSED [ 19%] 1210s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_delimiters PASSED [ 19%] 1210s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_empty_value PASSED [ 19%] 1210s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_personalities PASSED [ 19%] 1210s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_simple PASSED [ 19%] 1210s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_multiline PASSED [ 19%] 1210s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_multiline2 PASSED [ 19%] 1210s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_comments PASSED [ 19%] 1210s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_unchanged PASSED [ 19%] 1210s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_blank PASSED [ 19%] 1210s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_gaia_plurals PASSED [ 19%] 1210s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_duplicates PASSED [ 19%] 1210s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_gwt_plurals PASSED [ 19%] 1210s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_simple PASSED [ 19%] 1210s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated PASSED [ 19%] 1210s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_hard_newlines_preserved PASSED [ 19%] 1210s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_space_preservation PASSED [ 19%] 1210s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_no_value PASSED [ 19%] 1210s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_no_separator PASSED [ 19%] 1210s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_blank_entries PASSED [ 19%] 1210s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_fuzzy PASSED [ 19%] 1210s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys PASSED [ 19%] 1210s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys_missing_accesskey PASSED [ 19%] 1210s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_margin_whitespace PASSED [ 19%] 1210s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_all_whitespace PASSED [ 20%] 1210s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_propertyless_template PASSED [ 20%] 1210s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_delimiters PASSED [ 20%] 1210s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_empty_value PASSED [ 20%] 1210s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_personalities PASSED [ 20%] 1210s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_simple PASSED [ 20%] 1210s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_multiline PASSED [ 20%] 1210s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_multiline2 PASSED [ 20%] 1210s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_comments PASSED [ 20%] 1210s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_unchanged PASSED [ 20%] 1210s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_blank PASSED [ 20%] 1210s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_gaia_plurals PASSED [ 20%] 1210s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_duplicates PASSED [ 20%] 1210s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_gwt_plurals PASSED [ 20%] 1210s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_help PASSED [ 20%] 1210s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_help PASSED [ 20%] 1211s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert PASSED [ 20%] 1211s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_quotes PASSED [ 20%] 1211s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment PASSED [ 20%] 1211s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment_dos_eol PASSED [ 20%] 1211s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_double_string PASSED [ 20%] 1211s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_popup PASSED [ 20%] 1211s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_discardable PASSED [ 20%] 1211s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_menuex PASSED [ 20%] 1211s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_newlines PASSED [ 20%] 1211s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment_after PASSED [ 20%] 1211s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_block_language PASSED [ 20%] 1211s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_simpleunit PASSED [ 20%] 1211s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_basic PASSED [ 20%] 1211s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_multiline PASSED [ 20%] 1211s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapednewlines PASSED [ 20%] 1211s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapedtabs PASSED [ 20%] 1211s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapedquotes PASSED [ 20%] 1211s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_exclusions PASSED [ 20%] 1211s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments PASSED [ 21%] 1211s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingcomment PASSED [ 21%] 1211s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingduplicatecomment PASSED [ 21%] 1211s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingduplicatecommentwithwhitespace PASSED [ 21%] 1211s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments PASSED [ 21%] 1211s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments_existingcomment PASSED [ 21%] 1211s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments_existingduplicatecomment PASSED [ 21%] 1211s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments PASSED [ 21%] 1211s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments_existingduplicatecomment PASSED [ 21%] 1211s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments_existingcomment PASSED [ 21%] 1211s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_existingcomments PASSED [ 21%] 1211s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_simpleunit PASSED [ 21%] 1211s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_basic PASSED [ 21%] 1211s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_multiline PASSED [ 21%] 1211s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapednewlines PASSED [ 21%] 1211s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapedtabs PASSED [ 21%] 1211s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapedquotes PASSED [ 21%] 1211s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_exclusions PASSED [ 21%] 1211s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments PASSED [ 21%] 1211s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingcomment PASSED [ 21%] 1211s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingduplicatecomment PASSED [ 21%] 1211s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingduplicatecommentwithwhitespace PASSED [ 21%] 1211s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments PASSED [ 21%] 1211s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments_existingcomment PASSED [ 21%] 1211s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments_existingduplicatecomment PASSED [ 21%] 1211s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments PASSED [ 21%] 1211s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments_existingduplicatecomment PASSED [ 21%] 1211s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments_existingcomment PASSED [ 21%] 1211s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_existingcomments PASSED [ 21%] 1211s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_help PASSED [ 21%] 1211s tests/translate/convert/test_po2sub.py::TestPO2Sub::test_subrip PASSED [ 21%] 1211s tests/translate/convert/test_po2sub.py::TestPO2SubCommand::test_subrip PASSED [ 21%] 1211s tests/translate/convert/test_po2sub.py::TestPO2SubCommand::test_help PASSED [ 21%] 1211s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert_empty PASSED [ 22%] 1211s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert PASSED [ 22%] 1211s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert_marked_untranslated PASSED [ 22%] 1211s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert_empty PASSED [ 22%] 1211s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert PASSED [ 22%] 1211s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert_marked_untranslated PASSED [ 22%] 1211s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_help PASSED [ 22%] 1211s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_basic PASSED [ 22%] 1211s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_sourcelanguage PASSED [ 22%] 1211s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_targetlanguage PASSED [ 22%] 1211s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_multiline PASSED [ 22%] 1211s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapednewlines PASSED [ 22%] 1211s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapedtabs PASSED [ 22%] 1211s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapedquotes PASSED [ 22%] 1211s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_exclusions PASSED [ 22%] 1211s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_nonascii PASSED [ 22%] 1211s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_nonecomments PASSED [ 22%] 1211s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_otherscomments PASSED [ 22%] 1211s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_sourcecomments PASSED [ 22%] 1211s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_typecomments PASSED [ 22%] 1211s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_basic PASSED [ 22%] 1211s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_sourcelanguage PASSED [ 22%] 1211s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_targetlanguage PASSED [ 22%] 1211s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_multiline PASSED [ 22%] 1211s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapednewlines PASSED [ 22%] 1211s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapedtabs PASSED [ 22%] 1211s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapedquotes PASSED [ 22%] 1211s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_exclusions PASSED [ 22%] 1211s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_nonascii PASSED [ 22%] 1211s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_nonecomments PASSED [ 22%] 1211s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_otherscomments PASSED [ 22%] 1211s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_sourcecomments PASSED [ 22%] 1211s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_typecomments PASSED [ 22%] 1211s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_help PASSED [ 22%] 1211s tests/translate/convert/test_po2ts.py::TestPO2TS::test_simpleunit PASSED [ 23%] 1211s tests/translate/convert/test_po2ts.py::TestPO2TS::test_simple_unicode_unit PASSED [ 23%] 1211s tests/translate/convert/test_po2ts.py::TestPO2TS::test_fullunit PASSED [ 23%] 1211s tests/translate/convert/test_po2ts.py::TestPO2TS::test_fuzzyunit PASSED [ 23%] 1211s tests/translate/convert/test_po2ts.py::TestPO2TS::test_obsolete PASSED [ 23%] 1211s tests/translate/convert/test_po2ts.py::TestPO2TS::test_duplicates PASSED [ 23%] 1211s tests/translate/convert/test_po2ts.py::TestPO2TS::test_linebreak PASSED [ 23%] 1211s tests/translate/convert/test_po2ts.py::TestPO2TS::test_linebreak_consecutive PASSED [ 23%] 1211s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_simpleunit PASSED [ 23%] 1211s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_simple_unicode_unit PASSED [ 23%] 1211s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_fullunit PASSED [ 23%] 1211s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_fuzzyunit PASSED [ 23%] 1211s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_obsolete PASSED [ 23%] 1211s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_duplicates PASSED [ 23%] 1211s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_linebreak PASSED [ 23%] 1211s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_linebreak_consecutive PASSED [ 23%] 1211s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_help PASSED [ 23%] 1211s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_basic PASSED [ 23%] 1211s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_nonascii PASSED [ 23%] 1211s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_blank_handling PASSED [ 23%] 1211s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_fuzzy_handling PASSED [ 23%] 1211s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_obsolete_ignore PASSED [ 23%] 1211s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_header_ignore PASSED [ 23%] 1211s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_convert_completion_below_threshold PASSED [ 23%] 1211s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_convert_completion_above_threshold PASSED [ 23%] 1211s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_basic PASSED [ 23%] 1211s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_nonascii PASSED [ 23%] 1211s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_blank_handling PASSED [ 23%] 1211s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_fuzzy_handling PASSED [ 23%] 1211s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_obsolete_ignore PASSED [ 23%] 1211s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_header_ignore PASSED [ 23%] 1211s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_convert_completion_below_threshold PASSED [ 23%] 1211s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_convert_completion_above_threshold PASSED [ 23%] 1211s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_help PASSED [ 24%] 1211s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_basic PASSED [ 24%] 1211s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_unicode PASSED [ 24%] 1211s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_ordering_serialize PASSED [ 24%] 1211s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_markmin PASSED [ 24%] 1211s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_minimal PASSED [ 24%] 1211s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_basic PASSED [ 24%] 1211s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_multiline PASSED [ 24%] 1211s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapednewlines PASSED [ 24%] 1211s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapedtabs PASSED [ 24%] 1211s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapedquotes PASSED [ 24%] 1211s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_locationcomments PASSED [ 24%] 1211s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_othercomments PASSED [ 24%] 1211s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_automaticcomments PASSED [ 24%] 1211s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_header PASSED [ 24%] 1211s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_fuzzy PASSED [ 24%] 1211s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_germanic_plurals PASSED [ 24%] 1211s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_funny_plurals PASSED [ 24%] 1211s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_language_tags PASSED [ 24%] 1211s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_variables PASSED [ 24%] 1211s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_approved PASSED [ 24%] 1211s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_empty_PO PASSED [ 24%] 1211s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_no_templates PASSED [ 24%] 1211s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_simple_output PASSED [ 24%] 1211s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_simple PASSED [ 24%] 1211s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_translated PASSED [ 24%] 1211s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_no_fuzzy PASSED [ 24%] 1211s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_allow_fuzzy PASSED [ 24%] 1211s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_nested PASSED [ 24%] 1211s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_completion_below_threshold PASSED [ 24%] 1211s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_completion_above_threshold PASSED [ 24%] 1211s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_empty_PO PASSED [ 24%] 1211s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_no_templates PASSED [ 24%] 1211s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_simple_output PASSED [ 25%] 1211s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_simple PASSED [ 25%] 1211s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_translated PASSED [ 25%] 1211s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_no_fuzzy PASSED [ 25%] 1211s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_allow_fuzzy PASSED [ 25%] 1211s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_nested PASSED [ 25%] 1211s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_completion_below_threshold PASSED [ 25%] 1211s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_completion_above_threshold PASSED [ 25%] 1211s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_help PASSED [ 25%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_convertpot_blank PASSED [ 25%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_convertpot_blank_plurals PASSED [ 25%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_simple PASSED [ 25%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_messages_marked_fuzzy PASSED [ 25%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_plurals_with_fuzzy_matching PASSED [ 25%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_change XFAIL [ 25%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_change PASSED [ 25%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_and_whitespace_change PASSED [ 25%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_ambiguous_with_disambiguous PASSED [ 25%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_accelerator_changes XFAIL [ 25%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_lines_cut_differently XFAIL [ 25%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_automatic_comments_dont_duplicate PASSED [ 25%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_automatic_comments_new_overides_old PASSED [ 25%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_comments_with_blank_comment_lines PASSED [ 25%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_empty_commentlines PASSED [ 25%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgidcomments PASSED [ 25%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_with_msgidcomment PASSED [ 25%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_plurals PASSED [ 25%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_obsoleting_messages PASSED [ 25%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_not_obsoleting_empty_messages PASSED [ 25%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_new_before_obsolete PASSED [ 25%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_resurect_obsolete_messages PASSED [ 25%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_resurect_obsolete_messages_into_msgidcomment PASSED [ 25%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_header_initialisation PASSED [ 25%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_comments PASSED [ 25%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_typecomments PASSED [ 26%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgctxt PASSED [ 26%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgctxt_multiline PASSED [ 26%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgid_merge_on_location PASSED [ 26%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgid_merge_on_id PASSED [ 26%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_empty_msgid PASSED [ 26%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_migrate_msgidcomment_to_msgctxt PASSED [ 26%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_obsolete_msgctxt PASSED [ 26%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_small_strings PASSED [ 26%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_convertpot_blank PASSED [ 26%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_convertpot_blank_plurals PASSED [ 26%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_simple PASSED [ 26%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_messages_marked_fuzzy PASSED [ 26%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_plurals_with_fuzzy_matching PASSED [ 26%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_change XFAIL [ 26%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_change PASSED [ 26%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_and_whitespace_change PASSED [ 26%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_ambiguous_with_disambiguous PASSED [ 26%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_accelerator_changes XFAIL [ 26%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_lines_cut_differently XFAIL [ 26%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_automatic_comments_dont_duplicate PASSED [ 26%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_automatic_comments_new_overides_old PASSED [ 26%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_comments_with_blank_comment_lines PASSED [ 26%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_empty_commentlines PASSED [ 26%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgidcomments PASSED [ 26%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_with_msgidcomment PASSED [ 26%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_plurals PASSED [ 26%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_obsoleting_messages PASSED [ 26%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_not_obsoleting_empty_messages PASSED [ 26%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_new_before_obsolete PASSED [ 26%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_resurect_obsolete_messages PASSED [ 26%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_resurect_obsolete_messages_into_msgidcomment PASSED [ 26%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_header_initialisation PASSED [ 26%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_comments PASSED [ 27%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_typecomments PASSED [ 27%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgctxt PASSED [ 27%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgctxt_multiline PASSED [ 27%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgid_merge_on_location PASSED [ 27%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgid_merge_on_id PASSED [ 27%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_empty_msgid PASSED [ 27%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_migrate_msgidcomment_to_msgctxt PASSED [ 27%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_obsolete_msgctxt PASSED [ 27%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_small_strings PASSED [ 27%] 1211s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_help PASSED [ 27%] 1211s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_no_endlines_added PASSED [ 27%] 1211s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_uncomment_contributors PASSED [ 27%] 1211s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_multiline_comment_newlines PASSED [ 27%] 1211s tests/translate/convert/test_prop2po.py::TestProp2PO::test_simpleentry PASSED [ 27%] 1211s tests/translate/convert/test_prop2po.py::TestProp2PO::test_convertprop PASSED [ 27%] 1211s tests/translate/convert/test_prop2po.py::TestProp2PO::test_no_value_entry PASSED [ 27%] 1211s tests/translate/convert/test_prop2po.py::TestProp2PO::test_no_separator_entry PASSED [ 27%] 1211s tests/translate/convert/test_prop2po.py::TestProp2PO::test_tab_at_end_of_string PASSED [ 27%] 1211s tests/translate/convert/test_prop2po.py::TestProp2PO::test_tab_at_start_of_value PASSED [ 27%] 1211s tests/translate/convert/test_prop2po.py::TestProp2PO::test_unicode PASSED [ 27%] 1211s tests/translate/convert/test_prop2po.py::TestProp2PO::test_multiline_escaping PASSED [ 27%] 1211s tests/translate/convert/test_prop2po.py::TestProp2PO::test_comments PASSED [ 27%] 1211s tests/translate/convert/test_prop2po.py::TestProp2PO::test_multiline_comments PASSED [ 27%] 1211s tests/translate/convert/test_prop2po.py::TestProp2PO::test_folding_accesskeys PASSED [ 27%] 1211s tests/translate/convert/test_prop2po.py::TestProp2PO::test_dont_translate PASSED [ 27%] 1211s tests/translate/convert/test_prop2po.py::TestProp2PO::test_emptyproperty PASSED [ 27%] 1211s tests/translate/convert/test_prop2po.py::TestProp2PO::test_emptyproperty_translated PASSED [ 27%] 1211s tests/translate/convert/test_prop2po.py::TestProp2PO::test_newlines_in_value PASSED [ 27%] 1211s tests/translate/convert/test_prop2po.py::TestProp2PO::test_header_comments PASSED [ 27%] 1211s tests/translate/convert/test_prop2po.py::TestProp2PO::test_unassociated_comment_order PASSED [ 27%] 1211s tests/translate/convert/test_prop2po.py::TestProp2PO::test_x_header PASSED [ 27%] 1211s tests/translate/convert/test_prop2po.py::TestProp2PO::test_gaia_plurals PASSED [ 27%] 1211s tests/translate/convert/test_prop2po.py::TestProp2PO::test_successive_gaia_plurals PASSED [ 27%] 1211s tests/translate/convert/test_prop2po.py::TestProp2PO::test_duplicate_keys PASSED [ 28%] 1211s tests/translate/convert/test_prop2po.py::TestProp2PO::test_gwt_plurals PASSED [ 28%] 1211s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_simpleentry PASSED [ 28%] 1211s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_convertprop PASSED [ 28%] 1211s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_no_value_entry PASSED [ 28%] 1211s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_no_separator_entry PASSED [ 28%] 1211s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_tab_at_end_of_string PASSED [ 28%] 1211s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_tab_at_start_of_value PASSED [ 28%] 1211s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_unicode PASSED [ 28%] 1211s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_multiline_escaping PASSED [ 28%] 1211s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_comments PASSED [ 28%] 1211s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_multiline_comments PASSED [ 28%] 1211s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_folding_accesskeys PASSED [ 28%] 1211s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_dont_translate PASSED [ 28%] 1211s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_emptyproperty PASSED [ 28%] 1211s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_emptyproperty_translated PASSED [ 28%] 1211s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_newlines_in_value PASSED [ 28%] 1211s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_header_comments PASSED [ 28%] 1211s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_unassociated_comment_order PASSED [ 28%] 1211s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_x_header PASSED [ 28%] 1211s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_gaia_plurals PASSED [ 28%] 1211s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_successive_gaia_plurals PASSED [ 28%] 1211s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_duplicate_keys PASSED [ 28%] 1211s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_gwt_plurals PASSED [ 28%] 1211s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_help PASSED [ 28%] 1211s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_help PASSED [ 28%] 1212s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert PASSED [ 28%] 1212s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf16 PASSED [ 28%] 1212s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong PASSED [ 28%] 1212s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf8 PASSED [ 28%] 1212s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_menuex PASSED [ 28%] 1212s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_simple PASSED [ 28%] 1212s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_multiple_units PASSED [ 28%] 1212s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_automaticcomments PASSED [ 29%] 1212s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_translatorcomments PASSED [ 29%] 1212s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_locations PASSED [ 29%] 1212s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple PASSED [ 29%] 1212s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_multiple_units PASSED [ 29%] 1212s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_automaticcomments PASSED [ 29%] 1212s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_translatorcomments PASSED [ 29%] 1212s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_locations PASSED [ 29%] 1212s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_help PASSED [ 29%] 1212s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_pot PASSED [ 29%] 1212s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_po PASSED [ 29%] 1212s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_remove_duplicates PASSED [ 29%] 1212s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_convert_empty PASSED [ 29%] 1212s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_converttiki_defaults PASSED [ 29%] 1212s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_converttiki_includeunused PASSED [ 29%] 1212s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_convert_empty PASSED [ 29%] 1212s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_converttiki_defaults PASSED [ 29%] 1212s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_converttiki_includeunused PASSED [ 29%] 1212s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_help PASSED [ 29%] 1212s tests/translate/convert/test_ts2po.py::TestTS2PO::test_blank PASSED [ 29%] 1212s tests/translate/convert/test_ts2po.py::TestTS2PO::test_basic PASSED [ 29%] 1212s tests/translate/convert/test_ts2po.py::TestTS2PO::test_unfinished PASSED [ 29%] 1212s tests/translate/convert/test_ts2po.py::TestTS2PO::test_multiline PASSED [ 29%] 1212s tests/translate/convert/test_ts2po.py::TestTS2PO::test_obsolete PASSED [ 29%] 1212s tests/translate/convert/test_ts2po.py::TestTS2PO::test_comment PASSED [ 29%] 1212s tests/translate/convert/test_ts2po.py::TestTS2PO::test_extracomment PASSED [ 29%] 1212s tests/translate/convert/test_ts2po.py::TestTS2PO::test_emptycontext PASSED [ 29%] 1212s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_blank PASSED [ 29%] 1212s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_basic PASSED [ 29%] 1212s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_unfinished PASSED [ 29%] 1212s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_multiline PASSED [ 29%] 1212s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_obsolete PASSED [ 29%] 1212s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_comment PASSED [ 29%] 1212s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_extracomment PASSED [ 30%] 1212s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_emptycontext PASSED [ 30%] 1212s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_help PASSED [ 30%] 1212s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_convert_empty PASSED [ 30%] 1212s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_keep_duplicates PASSED [ 30%] 1212s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_drop_duplicates PASSED [ 30%] 1212s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_simple PASSED [ 30%] 1212s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_multiple_units PASSED [ 30%] 1212s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_carriage_return PASSED [ 30%] 1212s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_merge PASSED [ 30%] 1212s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_no_segmentation PASSED [ 30%] 1212s tests/translate/convert/test_txt2po.py::TestDoku2po::test_convert_empty PASSED [ 30%] 1212s tests/translate/convert/test_txt2po.py::TestDoku2po::test_keep_duplicates PASSED [ 30%] 1212s tests/translate/convert/test_txt2po.py::TestDoku2po::test_drop_duplicates PASSED [ 30%] 1212s tests/translate/convert/test_txt2po.py::TestDoku2po::test_basic PASSED [ 30%] 1212s tests/translate/convert/test_txt2po.py::TestDoku2po::test_bullet_list PASSED [ 30%] 1212s tests/translate/convert/test_txt2po.py::TestDoku2po::test_numbered_list PASSED [ 30%] 1212s tests/translate/convert/test_txt2po.py::TestDoku2po::test_spacing PASSED [ 30%] 1212s tests/translate/convert/test_txt2po.py::TestDoku2po::test_merge PASSED [ 30%] 1212s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_convert_empty PASSED [ 30%] 1212s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_keep_duplicates PASSED [ 30%] 1212s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_drop_duplicates PASSED [ 30%] 1212s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_simple PASSED [ 30%] 1212s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_multiple_units PASSED [ 30%] 1212s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_carriage_return PASSED [ 30%] 1212s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_merge PASSED [ 30%] 1212s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_no_segmentation PASSED [ 30%] 1212s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_help PASSED [ 30%] 1212s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_basic PASSED [ 30%] 1212s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_unicode PASSED [ 30%] 1212s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_markmin PASSED [ 30%] 1212s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_help PASSED [ 30%] 1212s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert PASSED [ 30%] 1212s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_minimal PASSED [ 30%] 1212s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_basic PASSED [ 31%] 1212s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_translatorcomments PASSED [ 31%] 1212s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_autocomment PASSED [ 31%] 1212s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_locations PASSED [ 31%] 1212s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_fuzzy PASSED [ 31%] 1212s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_plurals PASSED [ 31%] 1212s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_minimal PASSED [ 31%] 1212s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_basic PASSED [ 31%] 1212s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_translatorcomments PASSED [ 31%] 1212s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_autocomment PASSED [ 31%] 1212s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_locations PASSED [ 31%] 1212s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_fuzzy PASSED [ 31%] 1212s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_plurals PASSED [ 31%] 1212s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_help PASSED [ 31%] 1212s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_simple_convert PASSED [ 31%] 1212s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_minimal PASSED [ 31%] 1212s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_basic PASSED [ 31%] 1212s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_translatorcomments PASSED [ 31%] 1212s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_autocomment PASSED [ 31%] 1212s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_locations PASSED [ 31%] 1212s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_fuzzy PASSED [ 31%] 1212s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_plurals PASSED [ 31%] 1212s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_help PASSED [ 31%] 1212s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_preserve_filename PASSED [ 31%] 1212s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_pot PASSED [ 31%] 1212s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_po PASSED [ 31%] 1212s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_remove_duplicates PASSED [ 31%] 1212s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_convert_empty_YAML PASSED [ 31%] 1212s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_simple_output PASSED [ 31%] 1212s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_simple PASSED [ 31%] 1212s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_nested PASSED [ 31%] 1212s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_no_duplicates XFAIL [ 31%] 1212s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_convert_with_template PASSED [ 31%] 1212s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_convert_empty_YAML PASSED [ 32%] 1212s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_simple_output PASSED [ 32%] 1212s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_simple PASSED [ 32%] 1212s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_nested PASSED [ 32%] 1212s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_no_duplicates XFAIL [ 32%] 1212s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_convert_with_template PASSED [ 32%] 1212s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_help PASSED [ 32%] 1212s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_empty_target PASSED [ 32%] 1212s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_ellipsis PASSED [ 32%] 1212s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_spacestart_spaceend PASSED [ 32%] 1212s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_start_capitals PASSED [ 32%] 1212s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_end_punc PASSED [ 32%] 1212s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_combinations PASSED [ 32%] 1212s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_nothing_to_do PASSED [ 32%] 1212s tests/translate/filters/test_checks.py::test_defaults PASSED [ 32%] 1212s tests/translate/filters/test_checks.py::test_construct PASSED [ 32%] 1212s tests/translate/filters/test_checks.py::test_accelerator_markers PASSED [ 32%] 1212s tests/translate/filters/test_checks.py::test_messages PASSED [ 32%] 1212s tests/translate/filters/test_checks.py::test_accelerators PASSED [ 32%] 1212s tests/translate/filters/test_checks.py::test_acceleratedvariables XFAIL [ 32%] 1212s tests/translate/filters/test_checks.py::test_acronyms PASSED [ 32%] 1212s tests/translate/filters/test_checks.py::test_blank PASSED [ 32%] 1212s tests/translate/filters/test_checks.py::test_brackets PASSED [ 32%] 1212s tests/translate/filters/test_checks.py::test_compendiumconflicts PASSED [ 32%] 1212s tests/translate/filters/test_checks.py::test_doublequoting PASSED [ 32%] 1212s tests/translate/filters/test_checks.py::test_doublespacing PASSED [ 32%] 1212s tests/translate/filters/test_checks.py::test_doublewords PASSED [ 32%] 1212s tests/translate/filters/test_checks.py::test_endpunc PASSED [ 32%] 1212s tests/translate/filters/test_checks.py::test_endwhitespace PASSED [ 32%] 1212s tests/translate/filters/test_checks.py::test_escapes PASSED [ 32%] 1212s tests/translate/filters/test_checks.py::test_newlines PASSED [ 32%] 1212s tests/translate/filters/test_checks.py::test_tabs PASSED [ 32%] 1212s tests/translate/filters/test_checks.py::test_filepaths PASSED [ 32%] 1212s tests/translate/filters/test_checks.py::test_kdecomments PASSED [ 32%] 1212s tests/translate/filters/test_checks.py::test_long PASSED [ 33%] 1212s tests/translate/filters/test_checks.py::test_musttranslatewords XFAIL [ 33%] 1212s tests/translate/filters/test_checks.py::test_notranslatewords PASSED [ 33%] 1212s tests/translate/filters/test_checks.py::test_numbers PASSED [ 33%] 1212s tests/translate/filters/test_checks.py::test_persian_numbers PASSED [ 33%] 1212s tests/translate/filters/test_checks.py::test_bengali_numbers PASSED [ 33%] 1212s tests/translate/filters/test_checks.py::test_arabic_numbers PASSED [ 33%] 1212s tests/translate/filters/test_checks.py::test_assamese_numbers PASSED [ 33%] 1212s tests/translate/filters/test_checks.py::test_options PASSED [ 33%] 1212s tests/translate/filters/test_checks.py::test_printf PASSED [ 33%] 1212s tests/translate/filters/test_checks.py::test_pythonbraceformat PASSED [ 33%] 1212s tests/translate/filters/test_checks.py::test_puncspacing PASSED [ 33%] 1212s tests/translate/filters/test_checks.py::test_purepunc PASSED [ 33%] 1212s tests/translate/filters/test_checks.py::test_sentencecount PASSED [ 33%] 1212s tests/translate/filters/test_checks.py::test_short PASSED [ 33%] 1212s tests/translate/filters/test_checks.py::test_singlequoting PASSED [ 33%] 1212s tests/translate/filters/test_checks.py::test_vietnamese_singlequoting PASSED [ 33%] 1212s tests/translate/filters/test_checks.py::test_persian_single_and_double_quote_fail_at_the_same_time XFAIL [ 33%] 1212s tests/translate/filters/test_checks.py::test_persian_quoting PASSED [ 33%] 1212s tests/translate/filters/test_checks.py::test_simplecaps PASSED [ 33%] 1212s tests/translate/filters/test_checks.py::test_spellcheck SKIPPED (Spe...) [ 33%] 1212s tests/translate/filters/test_checks.py::test_startcaps PASSED [ 33%] 1212s tests/translate/filters/test_checks.py::test_startpunc PASSED [ 33%] 1212s tests/translate/filters/test_checks.py::test_startwhitespace PASSED [ 33%] 1212s tests/translate/filters/test_checks.py::test_unchanged PASSED [ 33%] 1212s tests/translate/filters/test_checks.py::test_untranslated PASSED [ 33%] 1212s tests/translate/filters/test_checks.py::test_validchars PASSED [ 33%] 1212s tests/translate/filters/test_checks.py::test_minimalchecker PASSED [ 33%] 1212s tests/translate/filters/test_checks.py::test_reducedchecker PASSED [ 33%] 1212s tests/translate/filters/test_checks.py::test_variables_kde PASSED [ 33%] 1212s tests/translate/filters/test_checks.py::test_variables_gnome PASSED [ 33%] 1212s tests/translate/filters/test_checks.py::test_variables_mozilla PASSED [ 33%] 1212s tests/translate/filters/test_checks.py::test_variables_openoffice PASSED [ 33%] 1212s tests/translate/filters/test_checks.py::test_variables_cclicense PASSED [ 34%] 1212s tests/translate/filters/test_checks.py::test_variables_ios PASSED [ 34%] 1212s tests/translate/filters/test_checks.py::test_xmltags PASSED [ 34%] 1212s tests/translate/filters/test_checks.py::test_bengali_mozilla_inverted_xmltags XFAIL [ 34%] 1212s tests/translate/filters/test_checks.py::test_ooxmltags PASSED [ 34%] 1212s tests/translate/filters/test_checks.py::test_functions PASSED [ 34%] 1212s tests/translate/filters/test_checks.py::test_emails PASSED [ 34%] 1212s tests/translate/filters/test_checks.py::test_urls PASSED [ 34%] 1212s tests/translate/filters/test_checks.py::test_simpleplurals PASSED [ 34%] 1212s tests/translate/filters/test_checks.py::test_nplurals PASSED [ 34%] 1212s tests/translate/filters/test_checks.py::test_credits PASSED [ 34%] 1212s tests/translate/filters/test_checks.py::test_gconf PASSED [ 34%] 1212s tests/translate/filters/test_checks.py::test_validxml PASSED [ 34%] 1212s tests/translate/filters/test_checks.py::test_hassuggestion PASSED [ 34%] 1212s tests/translate/filters/test_checks.py::test_dialogsizes PASSED [ 34%] 1212s tests/translate/filters/test_checks.py::test_skip_checks_per_language_in_some_checkers PASSED [ 34%] 1212s tests/translate/filters/test_checks.py::test_mozilla_no_accelerators_for_indic PASSED [ 34%] 1212s tests/translate/filters/test_checks.py::test_noaccelerators_only_in_mozilla_checker PASSED [ 34%] 1212s tests/translate/filters/test_checks.py::test_ensure_accelerators_not_in_target_if_not_in_source PASSED [ 34%] 1212s tests/translate/filters/test_checks.py::test_ensure_bengali_languages_script_is_correct PASSED [ 34%] 1212s tests/translate/filters/test_checks.py::test_category PASSED [ 34%] 1212s tests/translate/filters/test_decoration.py::test_spacestart PASSED [ 34%] 1212s tests/translate/filters/test_decoration.py::test_isvalidaccelerator PASSED [ 34%] 1212s tests/translate/filters/test_decoration.py::test_find_marked_variables PASSED [ 34%] 1212s tests/translate/filters/test_decoration.py::test_getnumbers PASSED [ 34%] 1212s tests/translate/filters/test_decoration.py::test_getfunctions PASSED [ 34%] 1212s tests/translate/filters/test_pofilter.py::TestPOFilter::test_simplepass PASSED [ 34%] 1212s tests/translate/filters/test_pofilter.py::TestPOFilter::test_simplefail PASSED [ 34%] 1212s tests/translate/filters/test_pofilter.py::TestPOFilter::test_variables_across_lines PASSED [ 34%] 1212s tests/translate/filters/test_pofilter.py::TestPOFilter::test_ignore_if_already_marked PASSED [ 34%] 1212s tests/translate/filters/test_pofilter.py::TestPOFilter::test_non_existant_check PASSED [ 34%] 1212s tests/translate/filters/test_pofilter.py::TestPOFilter::test_list_all_tests PASSED [ 34%] 1212s tests/translate/filters/test_pofilter.py::TestPOFilter::test_test_against_fuzzy PASSED [ 34%] 1212s tests/translate/filters/test_pofilter.py::TestPOFilter::test_test_against_review PASSED [ 35%] 1212s tests/translate/filters/test_pofilter.py::TestPOFilter::test_isfuzzy PASSED [ 35%] 1212s tests/translate/filters/test_pofilter.py::TestPOFilter::test_isreview PASSED [ 35%] 1212s tests/translate/filters/test_pofilter.py::TestPOFilter::test_notes PASSED [ 35%] 1212s tests/translate/filters/test_pofilter.py::TestPOFilter::test_unicode PASSED [ 35%] 1212s tests/translate/filters/test_pofilter.py::TestPOFilter::test_preconditions PASSED [ 35%] 1212s tests/translate/filters/test_pofilter.py::TestPOFilter::test_msgid_comments PASSED [ 35%] 1212s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_simplepass PASSED [ 35%] 1212s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_simplefail PASSED [ 35%] 1212s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_variables_across_lines PASSED [ 35%] 1212s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_ignore_if_already_marked PASSED [ 35%] 1212s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_non_existant_check PASSED [ 35%] 1212s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_list_all_tests PASSED [ 35%] 1212s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_test_against_fuzzy PASSED [ 35%] 1212s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_test_against_review PASSED [ 35%] 1212s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_isfuzzy PASSED [ 35%] 1212s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_isreview PASSED [ 35%] 1212s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_notes PASSED [ 35%] 1212s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_unicode PASSED [ 35%] 1212s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_preconditions PASSED [ 35%] 1212s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_simplepass PASSED [ 35%] 1212s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_simplefail PASSED [ 35%] 1212s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_variables_across_lines PASSED [ 35%] 1212s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_ignore_if_already_marked PASSED [ 35%] 1212s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_non_existant_check PASSED [ 35%] 1212s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_list_all_tests PASSED [ 35%] 1212s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_notes PASSED [ 35%] 1212s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_unicode PASSED [ 35%] 1212s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_preconditions PASSED [ 35%] 1212s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_test_against_fuzzy PASSED [ 35%] 1212s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_test_against_review PASSED [ 35%] 1212s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_isfuzzy PASSED [ 35%] 1212s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_isreview PASSED [ 35%] 1212s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_simplepass PASSED [ 35%] 1212s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_simplefail PASSED [ 36%] 1212s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_variables_across_lines PASSED [ 36%] 1212s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_ignore_if_already_marked PASSED [ 36%] 1212s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_non_existant_check PASSED [ 36%] 1212s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_list_all_tests PASSED [ 36%] 1212s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_test_against_fuzzy PASSED [ 36%] 1212s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_test_against_review PASSED [ 36%] 1212s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_isfuzzy PASSED [ 36%] 1212s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_isreview PASSED [ 36%] 1212s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_notes PASSED [ 36%] 1212s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_unicode PASSED [ 36%] 1212s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_preconditions PASSED [ 36%] 1212s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_msgid_comments PASSED [ 36%] 1213s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_cedillas PASSED [ 36%] 1213s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_niciun PASSED [ 36%] 1213s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_nicio PASSED [ 36%] 1213s tests/translate/filters/test_prefilters.py::test_removekdecomments PASSED [ 36%] 1213s tests/translate/filters/test_prefilters.py::test_filterwordswithpunctuation PASSED [ 36%] 1213s tests/translate/lang/test_af.py::test_sentences PASSED [ 36%] 1213s tests/translate/lang/test_af.py::test_capsstart PASSED [ 36%] 1213s tests/translate/lang/test_af.py::test_transliterate_cyrillic PASSED [ 36%] 1213s tests/translate/lang/test_am.py::test_punctranslate PASSED [ 36%] 1213s tests/translate/lang/test_am.py::test_sentences PASSED [ 36%] 1213s tests/translate/lang/test_ar.py::test_punctranslate PASSED [ 36%] 1213s tests/translate/lang/test_ar.py::test_sentences PASSED [ 36%] 1213s tests/translate/lang/test_common.py::test_characters PASSED [ 36%] 1213s tests/translate/lang/test_common.py::test_words PASSED [ 36%] 1213s tests/translate/lang/test_common.py::test_word_khmer XFAIL (ZWS is n...) [ 36%] 1213s tests/translate/lang/test_common.py::test_sentences PASSED [ 36%] 1213s tests/translate/lang/test_common.py::test_capsstart PASSED [ 36%] 1213s tests/translate/lang/test_common.py::test_numstart PASSED [ 36%] 1213s tests/translate/lang/test_common.py::test_punctranslate PASSED [ 36%] 1213s tests/translate/lang/test_common.py::test_length_difference PASSED [ 36%] 1213s tests/translate/lang/test_common.py::test_alter_length PASSED [ 37%] 1213s tests/translate/lang/test_data.py::test_normalise_code PASSED [ 37%] 1213s tests/translate/lang/test_data.py::test_simplify_to_common PASSED [ 37%] 1213s tests/translate/lang/test_el.py::test_punctranslate PASSED [ 37%] 1213s tests/translate/lang/test_el.py::test_sentences PASSED [ 37%] 1213s tests/translate/lang/test_es.py::test_punctranslate PASSED [ 37%] 1213s tests/translate/lang/test_es.py::test_sentences PASSED [ 37%] 1213s tests/translate/lang/test_fa.py::test_punctranslate PASSED [ 37%] 1213s tests/translate/lang/test_fa.py::test_sentences PASSED [ 37%] 1213s tests/translate/lang/test_factory.py::test_getlanguage PASSED [ 37%] 1213s tests/translate/lang/test_factory.py::test_get_all_languages PASSED [ 37%] 1213s tests/translate/lang/test_fr.py::test_punctranslate PASSED [ 37%] 1213s tests/translate/lang/test_fr.py::test_sentences PASSED [ 37%] 1213s tests/translate/lang/test_hy.py::test_punctranslate PASSED [ 37%] 1213s tests/translate/lang/test_hy.py::test_sentences PASSED [ 37%] 1213s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_identify_lang PASSED [ 37%] 1213s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_identify_store PASSED [ 37%] 1213s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_bad_init_data PASSED [ 37%] 1213s tests/translate/lang/test_ja.py::test_punctranslate PASSED [ 37%] 1213s tests/translate/lang/test_ja.py::test_sentences PASSED [ 37%] 1213s tests/translate/lang/test_km.py::test_punctranslate PASSED [ 37%] 1213s tests/translate/lang/test_km.py::test_sentences PASSED [ 37%] 1213s tests/translate/lang/test_ko.py::test_punctranslate PASSED [ 37%] 1213s tests/translate/lang/test_ko.py::test_sentences PASSED [ 37%] 1213s tests/translate/lang/test_ne.py::test_punctranslate PASSED [ 37%] 1213s tests/translate/lang/test_ne.py::test_sentences PASSED [ 37%] 1213s tests/translate/lang/test_nqo.py::test_punctranslate PASSED [ 37%] 1213s tests/translate/lang/test_nqo.py::test_sentences PASSED [ 37%] 1213s tests/translate/lang/test_or.py::test_punctranslate PASSED [ 37%] 1213s tests/translate/lang/test_or.py::test_country_code PASSED [ 37%] 1213s tests/translate/lang/test_or.py::test_sentences PASSED [ 37%] 1213s tests/translate/lang/test_poedit.py::test_isocode PASSED [ 37%] 1213s tests/translate/lang/test_ro.py::test_cedillas PASSED [ 37%] 1213s tests/translate/lang/test_ro.py::test_niciun PASSED [ 37%] 1213s tests/translate/lang/test_scn.py::test_italianisms PASSED [ 38%] 1213s tests/translate/lang/test_scn.py::test_vocalism PASSED [ 38%] 1213s tests/translate/lang/test_scn.py::test_suffixes PASSED [ 38%] 1213s tests/translate/lang/test_team.py::test_simple PASSED [ 38%] 1213s tests/translate/lang/test_th.py::test_punctranslate PASSED [ 38%] 1213s tests/translate/lang/test_th.py::test_sentences PASSED [ 38%] 1213s tests/translate/lang/test_tr.py::test_sentences PASSED [ 38%] 1213s tests/translate/lang/test_uk.py::test_sentences PASSED [ 38%] 1213s tests/translate/lang/test_vi.py::test_punctranslate PASSED [ 38%] 1213s tests/translate/lang/test_vi.py::test_sentences PASSED [ 38%] 1213s tests/translate/lang/test_zh.py::test_punctranslate PASSED [ 38%] 1213s tests/translate/lang/test_zh.py::test_sentences PASSED [ 38%] 1213s tests/translate/misc/test_deprecation.py::TestDeprecation::test_deprecated_decorator PASSED [ 38%] 1213s tests/translate/misc/test_deprecation.py::TestDeprecation::test_no_deprecated_decorator PASSED [ 38%] 1213s tests/translate/misc/test_dictutils.py::test_cidict_has_key PASSED [ 38%] 1213s tests/translate/misc/test_multistring.py::TestMultistring::test_constructor PASSED [ 38%] 1213s tests/translate/misc/test_multistring.py::TestMultistring::test_repr PASSED [ 38%] 1213s tests/translate/misc/test_multistring.py::TestMultistring::test_replace PASSED [ 38%] 1213s tests/translate/misc/test_multistring.py::TestMultistring::test_comparison PASSED [ 38%] 1213s tests/translate/misc/test_multistring.py::TestMultistring::test_coercion PASSED [ 38%] 1213s tests/translate/misc/test_multistring.py::TestMultistring::test_unicode_coercion PASSED [ 38%] 1213s tests/translate/misc/test_multistring.py::TestMultistring::test_list_coercion PASSED [ 38%] 1213s tests/translate/misc/test_multistring.py::TestMultistring::test_multistring_hash PASSED [ 38%] 1213s tests/translate/misc/test_optrecurse.py::TestRecursiveOptionParser::test_splitext PASSED [ 38%] 1213s tests/translate/misc/test_optrecurse.py::TestRecursiveOptionParser::test_outputfile_receives_bytes PASSED [ 38%] 1213s tests/translate/misc/test_progressbar.py::test_hashprogressbar PASSED [ 38%] 1213s tests/translate/misc/test_quote.py::test_find_all PASSED [ 38%] 1213s tests/translate/misc/test_quote.py::test_extract PASSED [ 38%] 1213s tests/translate/misc/test_quote.py::test_extractwithoutquotes PASSED [ 38%] 1213s tests/translate/misc/test_quote.py::test_extractwithoutquotes_passfunc PASSED [ 38%] 1213s tests/translate/misc/test_quote.py::test_stripcomment PASSED [ 38%] 1213s tests/translate/misc/test_quote.py::TestEncoding::test_javapropertiesencode PASSED [ 38%] 1213s tests/translate/misc/test_quote.py::TestEncoding::test_java_utf8_properties_encode PASSED [ 38%] 1213s tests/translate/misc/test_quote.py::TestEncoding::test_escapespace PASSED [ 39%] 1213s tests/translate/misc/test_quote.py::TestEncoding::test_mozillaescapemarginspaces PASSED [ 39%] 1213s tests/translate/misc/test_quote.py::TestEncoding::test_mozilla_control_escapes PASSED [ 39%] 1213s tests/translate/misc/test_quote.py::TestEncoding::test_propertiesdecode PASSED [ 39%] 1213s tests/translate/misc/test_quote.py::TestEncoding::test_controlchars PASSED [ 39%] 1213s tests/translate/misc/test_quote.py::TestEncoding::test_properties_decode_slashu PASSED [ 39%] 1213s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding PASSED [ 39%] 1213s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_existing_entities PASSED [ 39%] 1213s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_passthrough PASSED [ 39%] 1213s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_nonentities PASSED [ 39%] 1213s tests/translate/misc/test_xml_helpers.py::TestReindent::test_indent_four_spaces PASSED [ 39%] 1213s tests/translate/misc/test_xml_helpers.py::TestReindent::test_indent_tab PASSED [ 39%] 1213s tests/translate/search/test_lshtein.py::TestLevenshtein::test_basic_distance PASSED [ 39%] 1213s tests/translate/search/test_lshtein.py::TestLevenshtein::test_basic_similarity PASSED [ 39%] 1213s tests/translate/search/test_lshtein.py::TestLevenshtein::test_long_similarity PASSED [ 39%] 1213s tests/translate/search/test_match.py::TestMatch::test_matching PASSED [ 39%] 1213s tests/translate/search/test_match.py::TestMatch::test_multiple_store PASSED [ 39%] 1213s tests/translate/search/test_match.py::TestMatch::test_extendtm PASSED [ 39%] 1213s tests/translate/search/test_match.py::TestMatch::test_terminology PASSED [ 39%] 1213s tests/translate/search/test_match.py::TestMatch::test_brackets PASSED [ 39%] 1213s tests/translate/search/test_match.py::TestMatch::test_past_tences PASSED [ 39%] 1213s tests/translate/search/test_match.py::TestMatch::test_space_mismatch PASSED [ 39%] 1213s tests/translate/search/test_match.py::TestMatch::test_hyphen_mismatch PASSED [ 39%] 1213s tests/translate/search/test_terminology.py::TestTerminology::test_basic PASSED [ 39%] 1213s tests/translate/services/test_tmserver.py::TestTMServer::test_import PASSED [ 39%] 1213s tests/translate/services/test_tmserver.py::TestTMServer::test_server PASSED [ 39%] 1213s tests/translate/storage/placeables/test_base.py::TestStringElem::test_parse PASSED [ 39%] 1213s tests/translate/storage/placeables/test_base.py::TestStringElem::test_tree PASSED [ 39%] 1213s tests/translate/storage/placeables/test_base.py::TestStringElem::test_add PASSED [ 39%] 1213s tests/translate/storage/placeables/test_base.py::TestStringElem::test_contains PASSED [ 39%] 1213s tests/translate/storage/placeables/test_base.py::TestStringElem::test_getitem PASSED [ 39%] 1213s tests/translate/storage/placeables/test_base.py::TestStringElem::test_getslice PASSED [ 39%] 1213s tests/translate/storage/placeables/test_base.py::TestStringElem::test_iter PASSED [ 39%] 1213s tests/translate/storage/placeables/test_base.py::TestStringElem::test_len PASSED [ 40%] 1213s tests/translate/storage/placeables/test_base.py::TestStringElem::test_mul PASSED [ 40%] 1213s tests/translate/storage/placeables/test_base.py::TestStringElem::test_elem_offset PASSED [ 40%] 1213s tests/translate/storage/placeables/test_base.py::TestStringElem::test_elem_at_offset PASSED [ 40%] 1213s tests/translate/storage/placeables/test_base.py::TestStringElem::test_find PASSED [ 40%] 1213s tests/translate/storage/placeables/test_base.py::TestStringElem::test_find_elems_with PASSED [ 40%] 1213s tests/translate/storage/placeables/test_base.py::TestStringElem::test_flatten PASSED [ 40%] 1213s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case1 PASSED [ 40%] 1213s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case2 PASSED [ 40%] 1213s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case3 PASSED [ 40%] 1213s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case4 PASSED [ 40%] 1213s tests/translate/storage/placeables/test_base.py::TestStringElem::test_insert PASSED [ 40%] 1213s tests/translate/storage/placeables/test_base.py::TestStringElem::test_isleaf PASSED [ 40%] 1213s tests/translate/storage/placeables/test_base.py::TestStringElem::test_prune PASSED [ 40%] 1213s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_base_placeables PASSED [ 40%] 1213s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_general_placeables XFAIL [ 40%] 1213s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_xliff_placeables XFAIL [ 40%] 1213s tests/translate/storage/placeables/test_general.py::test_placeable_numbers PASSED [ 40%] 1213s tests/translate/storage/placeables/test_general.py::test_placeable_newline PASSED [ 40%] 1213s tests/translate/storage/placeables/test_general.py::test_placeable_alt_attr PASSED [ 40%] 1213s tests/translate/storage/placeables/test_general.py::test_placeable_qt_formatting PASSED [ 40%] 1213s tests/translate/storage/placeables/test_general.py::test_placeable_camelcase PASSED [ 40%] 1213s tests/translate/storage/placeables/test_general.py::test_placeable_space PASSED [ 40%] 1213s tests/translate/storage/placeables/test_general.py::test_placeable_punctuation PASSED [ 40%] 1213s tests/translate/storage/placeables/test_general.py::test_placeable_xml_entity PASSED [ 40%] 1213s tests/translate/storage/placeables/test_general.py::test_placeable_xml_tag PASSED [ 40%] 1213s tests/translate/storage/placeables/test_general.py::test_placeable_option PASSED [ 40%] 1213s tests/translate/storage/placeables/test_general.py::test_placeable_file PASSED [ 40%] 1213s tests/translate/storage/placeables/test_general.py::test_placeable_email PASSED [ 40%] 1213s tests/translate/storage/placeables/test_general.py::test_placeable_caps PASSED [ 40%] 1213s tests/translate/storage/placeables/test_general.py::test_placeable_formatting PASSED [ 40%] 1213s tests/translate/storage/placeables/test_general.py::test_placeable_doubleat PASSED [ 40%] 1213s tests/translate/storage/placeables/test_general.py::test_placeable_brace PASSED [ 40%] 1213s tests/translate/storage/placeables/test_general.py::test_python_placeable PASSED [ 40%] 1213s tests/translate/storage/placeables/test_lisa.py::test_xml_to_strelem PASSED [ 41%] 1213s tests/translate/storage/placeables/test_lisa.py::test_xml_space PASSED [ 41%] 1213s tests/translate/storage/placeables/test_lisa.py::test_chunk_list PASSED [ 41%] 1213s tests/translate/storage/placeables/test_lisa.py::test_set_strelem_to_xml PASSED [ 41%] 1213s tests/translate/storage/placeables/test_lisa.py::test_unknown_xml_placeable PASSED [ 41%] 1213s tests/translate/storage/placeables/test_terminology.py::TestTerminologyPlaceable::test_simple_terminology PASSED [ 41%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_isfuzzy PASSED [ 41%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_create PASSED [ 41%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_eq PASSED [ 41%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escapes PASSED [ 41%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_difficult_escapes PASSED [ 41%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_note_sanity PASSED [ 41%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_target PASSED [ 41%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_rich_get PASSED [ 41%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_rich_set PASSED [ 41%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_message_with_newline PASSED [ 41%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quotes_with_newline PASSED [ 41%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_message_with_newline_in_xml PASSED [ 41%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_twitter PASSED [ 41%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quote PASSED [ 41%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_question PASSED [ 41%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_double_space PASSED [ 41%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_leading_space PASSED [ 41%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_tailing_space PASSED [ 41%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_xml_entities PASSED [ 41%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code PASSED [ 41%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code_quote PASSED [ 41%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code_quote_newline PASSED [ 41%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_arrows PASSED [ 41%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_link PASSED [ 41%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_link_and_text PASSED [ 41%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_blank_string PASSED [ 41%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_escape_message_with_newline PASSED [ 41%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_invalid_lang PASSED [ 42%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_quote PASSED [ 42%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_leading_space PASSED [ 42%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_trailing_space PASSED [ 42%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_with_ampersand PASSED [ 42%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_double_space PASSED [ 42%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_deep_double_space PASSED [ 42%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_complex_xml PASSED [ 42%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quoted_newlines PASSED [ 42%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_message_with_newline PASSED [ 42%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_message_with_newline_in_xml PASSED [ 42%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_twitter PASSED [ 42%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_question PASSED [ 42%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quote PASSED [ 42%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_double_space PASSED [ 42%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_space PASSED [ 42%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_newlines PASSED [ 42%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_xml_entities PASSED [ 42%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_code PASSED [ 42%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_arrows PASSED [ 42%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_link PASSED [ 42%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_link_and_text PASSED [ 42%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_blank_string PASSED [ 42%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_space PASSED [ 42%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_spaces PASSED [ 42%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_spaces PASSED [ 42%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_newline PASSED [ 42%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_many_quotes PASSED [ 42%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_blank_string_again PASSED [ 42%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_double_quotes_string PASSED [ 42%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_newline_in_string PASSED [ 42%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_not_translatable_string PASSED [ 42%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_parse_message_with_newline PASSED [ 42%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_parse_message_with_comments PASSED [ 42%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_quote PASSED [ 43%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_leading_space PASSED [ 43%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_leading_space_quoted PASSED [ 43%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_trailing_space PASSED [ 43%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_trailing_space_quoted PASSED [ 43%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_with_ampersand PASSED [ 43%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_double_space_quoted PASSED [ 43%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_deep_double_space_quoted PASSED [ 43%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_complex_xml PASSED [ 43%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_unicode PASSED [ 43%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_unescaped PASSED [ 43%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_escaped_alone PASSED [ 43%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_escaped_full PASSED [ 43%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_create_blank PASSED [ 43%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_add PASSED [ 43%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_remove PASSED [ 43%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_find PASSED [ 43%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_parse PASSED [ 43%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_files PASSED [ 43%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_save PASSED [ 43%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_extensions PASSED [ 43%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_mimetypes PASSED [ 43%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_translate PASSED [ 43%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup PASSED [ 43%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_nonascii PASSED [ 43%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_default_handlings PASSED [ 43%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_filename PASSED [ 43%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_filename_default_language PASSED [ 43%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_invalid_filename PASSED [ 43%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_namespaces PASSED [ 43%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_serialize PASSED [ 43%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_add_formatting PASSED [ 43%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity PASSED [ 43%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_invalid_entity PASSED [ 44%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_indent PASSED [ 44%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_markup PASSED [ 44%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity_add PASSED [ 44%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity_add_noedit PASSED [ 44%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_remove PASSED [ 44%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_set PASSED [ 44%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_others PASSED [ 44%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_quotes_set PASSED [ 44%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_xliff_g PASSED [ 44%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_xliff_namespace PASSED [ 44%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_zh_hk PASSED [ 44%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_b_zh_hk PASSED [ 44%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_missing_plural PASSED [ 44%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_removeunit PASSED [ 44%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_cdata PASSED [ 44%] 1213s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_prefix PASSED [ 44%] 1214s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_rtl PASSED [ 44%] 1214s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_isfuzzy PASSED [ 44%] 1214s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_create PASSED [ 44%] 1214s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_eq PASSED [ 44%] 1214s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_escapes PASSED [ 44%] 1214s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_difficult_escapes PASSED [ 44%] 1214s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_note_sanity PASSED [ 44%] 1214s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_target PASSED [ 44%] 1214s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_rich_get PASSED [ 44%] 1214s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_rich_set PASSED [ 44%] 1214s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_create_blank PASSED [ 44%] 1214s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_add PASSED [ 44%] 1214s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_remove PASSED [ 44%] 1214s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_find PASSED [ 44%] 1214s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_parse PASSED [ 44%] 1214s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_files PASSED [ 44%] 1214s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_save PASSED [ 45%] 1214s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_extensions PASSED [ 45%] 1214s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_mimetypes PASSED [ 45%] 1214s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_translate PASSED [ 45%] 1214s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_markup PASSED [ 45%] 1214s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_nonascii PASSED [ 45%] 1214s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_plural PASSED [ 45%] 1214s tests/translate/storage/test_base.py::TestTranslationUnit::test_isfuzzy PASSED [ 45%] 1214s tests/translate/storage/test_base.py::TestTranslationUnit::test_create PASSED [ 45%] 1214s tests/translate/storage/test_base.py::TestTranslationUnit::test_eq PASSED [ 45%] 1214s tests/translate/storage/test_base.py::TestTranslationUnit::test_target PASSED [ 45%] 1214s tests/translate/storage/test_base.py::TestTranslationUnit::test_escapes PASSED [ 45%] 1214s tests/translate/storage/test_base.py::TestTranslationUnit::test_difficult_escapes PASSED [ 45%] 1214s tests/translate/storage/test_base.py::TestTranslationUnit::test_note_sanity PASSED [ 45%] 1214s tests/translate/storage/test_base.py::TestTranslationUnit::test_rich_get PASSED [ 45%] 1214s tests/translate/storage/test_base.py::TestTranslationUnit::test_rich_set PASSED [ 45%] 1214s tests/translate/storage/test_base.py::TestTranslationStore::test_create_blank PASSED [ 45%] 1214s tests/translate/storage/test_base.py::TestTranslationStore::test_add PASSED [ 45%] 1214s tests/translate/storage/test_base.py::TestTranslationStore::test_remove PASSED [ 45%] 1214s tests/translate/storage/test_base.py::TestTranslationStore::test_find PASSED [ 45%] 1214s tests/translate/storage/test_base.py::TestTranslationStore::test_translate PASSED [ 45%] 1214s tests/translate/storage/test_base.py::TestTranslationStore::test_parse PASSED [ 45%] 1214s tests/translate/storage/test_base.py::TestTranslationStore::test_files PASSED [ 45%] 1214s tests/translate/storage/test_base.py::TestTranslationStore::test_save PASSED [ 45%] 1214s tests/translate/storage/test_base.py::TestTranslationStore::test_markup PASSED [ 45%] 1214s tests/translate/storage/test_base.py::TestTranslationStore::test_nonascii PASSED [ 45%] 1214s tests/translate/storage/test_base.py::TestTranslationStore::test_extensions PASSED [ 45%] 1214s tests/translate/storage/test_base.py::TestTranslationStore::test_mimetypes PASSED [ 45%] 1214s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_isfuzzy PASSED [ 45%] 1214s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_create PASSED [ 45%] 1214s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_eq PASSED [ 45%] 1214s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_target PASSED [ 45%] 1214s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_escapes PASSED [ 45%] 1214s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_rich_get PASSED [ 45%] 1214s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_rich_set PASSED [ 46%] 1214s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_difficult_escapes PASSED [ 46%] 1214s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_newlines PASSED [ 46%] 1214s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_istranslated PASSED [ 46%] 1214s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_note_sanity PASSED [ 46%] 1214s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_create_blank PASSED [ 46%] 1214s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_add PASSED [ 46%] 1214s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_remove PASSED [ 46%] 1214s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_find PASSED [ 46%] 1214s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_translate PASSED [ 46%] 1214s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_parse PASSED [ 46%] 1214s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_files PASSED [ 46%] 1214s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_save PASSED [ 46%] 1214s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_markup PASSED [ 46%] 1214s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_nonascii PASSED [ 46%] 1214s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_extensions PASSED [ 46%] 1214s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_mimetypes PASSED [ 46%] 1214s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_checksum PASSED [ 46%] 1214s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_isfuzzy PASSED [ 46%] 1214s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_create PASSED [ 46%] 1214s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_eq PASSED [ 46%] 1214s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_target PASSED [ 46%] 1214s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_escapes PASSED [ 46%] 1214s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_difficult_escapes PASSED [ 46%] 1214s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_note_sanity PASSED [ 46%] 1214s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_rich_get PASSED [ 46%] 1214s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_rich_set PASSED [ 46%] 1214s tests/translate/storage/test_csvl10n.py::TestCSV::test_create_blank PASSED [ 46%] 1214s tests/translate/storage/test_csvl10n.py::TestCSV::test_add PASSED [ 46%] 1214s tests/translate/storage/test_csvl10n.py::TestCSV::test_remove PASSED [ 46%] 1214s tests/translate/storage/test_csvl10n.py::TestCSV::test_find PASSED [ 46%] 1214s tests/translate/storage/test_csvl10n.py::TestCSV::test_translate PASSED [ 46%] 1214s tests/translate/storage/test_csvl10n.py::TestCSV::test_parse PASSED [ 46%] 1214s tests/translate/storage/test_csvl10n.py::TestCSV::test_files PASSED [ 47%] 1214s tests/translate/storage/test_csvl10n.py::TestCSV::test_save PASSED [ 47%] 1214s tests/translate/storage/test_csvl10n.py::TestCSV::test_markup PASSED [ 47%] 1214s tests/translate/storage/test_csvl10n.py::TestCSV::test_nonascii PASSED [ 47%] 1214s tests/translate/storage/test_csvl10n.py::TestCSV::test_extensions PASSED [ 47%] 1214s tests/translate/storage/test_csvl10n.py::TestCSV::test_mimetypes PASSED [ 47%] 1214s tests/translate/storage/test_csvl10n.py::TestCSV::test_singlequoting PASSED [ 47%] 1214s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8 PASSED [ 47%] 1214s tests/translate/storage/test_csvl10n.py::TestCSV::test_dialect PASSED [ 47%] 1214s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8_sig PASSED [ 47%] 1214s tests/translate/storage/test_csvl10n.py::TestCSV::test_default PASSED [ 47%] 1214s tests/translate/storage/test_csvl10n.py::TestCSV::test_location_is_parsed PASSED [ 47%] 1214s tests/translate/storage/test_csvl10n.py::TestCSV::test_context_is_parsed PASSED [ 47%] 1214s tests/translate/storage/test_csvl10n.py::TestCSV::test_newline PASSED [ 47%] 1214s tests/translate/storage/test_csvl10n.py::TestCSV::test_parse_sample PASSED [ 47%] 1214s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8_detection PASSED [ 47%] 1214s tests/translate/storage/test_csvl10n.py::TestCSV::test_encoding PASSED [ 47%] 1214s tests/translate/storage/test_csvl10n.py::TestCSV::test_corrupt PASSED [ 47%] 1214s tests/translate/storage/test_directory.py::TestDirectory::test_created PASSED [ 47%] 1214s tests/translate/storage/test_directory.py::TestDirectory::test_basic PASSED [ 47%] 1214s tests/translate/storage/test_directory.py::TestDirectory::test_structure PASSED [ 47%] 1214s tests/translate/storage/test_directory.py::TestDirectory::test_getunits PASSED [ 47%] 1214s tests/translate/storage/test_dtd.py::test_roundtrip_quoting PASSED [ 47%] 1214s tests/translate/storage/test_dtd.py::test_quotefordtd_unimplemented_cases XFAIL [ 47%] 1214s tests/translate/storage/test_dtd.py::test_quotefordtd PASSED [ 47%] 1214s tests/translate/storage/test_dtd.py::test_unquotefromdtd_unimplemented_cases XFAIL [ 47%] 1214s tests/translate/storage/test_dtd.py::test_unquotefromdtd PASSED [ 47%] 1214s tests/translate/storage/test_dtd.py::test_android_roundtrip_quoting PASSED [ 47%] 1214s tests/translate/storage/test_dtd.py::test_quoteforandroid PASSED [ 47%] 1214s tests/translate/storage/test_dtd.py::test_unquotefromandroid PASSED [ 47%] 1214s tests/translate/storage/test_dtd.py::test_removeinvalidamp PASSED [ 47%] 1214s tests/translate/storage/test_dtd.py::TestDTDUnit::test_isfuzzy PASSED [ 47%] 1214s tests/translate/storage/test_dtd.py::TestDTDUnit::test_create PASSED [ 47%] 1214s tests/translate/storage/test_dtd.py::TestDTDUnit::test_eq PASSED [ 47%] 1214s tests/translate/storage/test_dtd.py::TestDTDUnit::test_escapes PASSED [ 48%] 1214s tests/translate/storage/test_dtd.py::TestDTDUnit::test_difficult_escapes PASSED [ 48%] 1214s tests/translate/storage/test_dtd.py::TestDTDUnit::test_note_sanity PASSED [ 48%] 1214s tests/translate/storage/test_dtd.py::TestDTDUnit::test_target PASSED [ 48%] 1214s tests/translate/storage/test_dtd.py::TestDTDUnit::test_rich_get PASSED [ 48%] 1214s tests/translate/storage/test_dtd.py::TestDTDUnit::test_rich_set PASSED [ 48%] 1214s tests/translate/storage/test_dtd.py::TestDTD::test_create_blank PASSED [ 48%] 1214s tests/translate/storage/test_dtd.py::TestDTD::test_add PASSED [ 48%] 1214s tests/translate/storage/test_dtd.py::TestDTD::test_remove PASSED [ 48%] 1214s tests/translate/storage/test_dtd.py::TestDTD::test_find PASSED [ 48%] 1214s tests/translate/storage/test_dtd.py::TestDTD::test_parse PASSED [ 48%] 1214s tests/translate/storage/test_dtd.py::TestDTD::test_files PASSED [ 48%] 1214s tests/translate/storage/test_dtd.py::TestDTD::test_save PASSED [ 48%] 1214s tests/translate/storage/test_dtd.py::TestDTD::test_extensions PASSED [ 48%] 1214s tests/translate/storage/test_dtd.py::TestDTD::test_mimetypes PASSED [ 48%] 1214s tests/translate/storage/test_dtd.py::TestDTD::test_translate PASSED [ 48%] 1214s tests/translate/storage/test_dtd.py::TestDTD::test_markup PASSED [ 48%] 1214s tests/translate/storage/test_dtd.py::TestDTD::test_nonascii PASSED [ 48%] 1214s tests/translate/storage/test_dtd.py::TestDTD::test_simpleentity PASSED [ 48%] 1214s tests/translate/storage/test_dtd.py::TestDTD::test_blanklines PASSED [ 48%] 1214s tests/translate/storage/test_dtd.py::TestDTD::test_simpleentity_source PASSED [ 48%] 1214s tests/translate/storage/test_dtd.py::TestDTD::test_hashcomment_source PASSED [ 48%] 1214s tests/translate/storage/test_dtd.py::TestDTD::test_commentclosing PASSED [ 48%] 1214s tests/translate/storage/test_dtd.py::TestDTD::test_commententity PASSED [ 48%] 1214s tests/translate/storage/test_dtd.py::TestDTD::test_newlines_in_entity PASSED [ 48%] 1214s tests/translate/storage/test_dtd.py::TestDTD::test_conflate_comments PASSED [ 48%] 1214s tests/translate/storage/test_dtd.py::TestDTD::test_localisation_notes PASSED [ 48%] 1214s tests/translate/storage/test_dtd.py::TestDTD::test_entitityreference_in_source PASSED [ 48%] 1214s tests/translate/storage/test_dtd.py::TestDTD::test_entitityreference_order_in_source PASSED [ 48%] 1214s tests/translate/storage/test_dtd.py::TestDTD::test_comment_following XFAIL [ 48%] 1214s tests/translate/storage/test_dtd.py::TestDTD::test_comment_newline_space_closing PASSED [ 48%] 1214s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting XFAIL [ 48%] 1214s tests/translate/storage/test_dtd.py::TestDTD::test_missing_quotes PASSED [ 48%] 1214s tests/translate/storage/test_dtd.py::TestDTD::test_entity_escaping PASSED [ 49%] 1214s tests/translate/storage/test_dtd.py::TestDTD::test_entity_escaping_roundtrip PASSED [ 49%] 1214s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_create_blank PASSED [ 49%] 1214s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_add PASSED [ 49%] 1214s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_remove PASSED [ 49%] 1214s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_find PASSED [ 49%] 1214s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_parse PASSED [ 49%] 1214s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_files PASSED [ 49%] 1214s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_save PASSED [ 49%] 1214s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_extensions PASSED [ 49%] 1214s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_mimetypes PASSED [ 49%] 1214s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_translate PASSED [ 49%] 1214s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_markup PASSED [ 49%] 1214s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_nonascii PASSED [ 49%] 1214s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_single_quote_escape PASSED [ 49%] 1214s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_single_quote_escape_parse_and_convert_back PASSED [ 49%] 1214s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_double_quote_escape PASSED [ 49%] 1214s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_double_quote_escape_parse_and_convert_back PASSED [ 49%] 1214s tests/translate/storage/test_factory.py::TestPOFactory::test_getclass PASSED [ 49%] 1214s tests/translate/storage/test_factory.py::TestPOFactory::test_getobject_store PASSED [ 49%] 1214s tests/translate/storage/test_factory.py::TestPOFactory::test_getobject PASSED [ 49%] 1214s tests/translate/storage/test_factory.py::TestPOFactory::test_get_noname_object PASSED [ 49%] 1214s tests/translate/storage/test_factory.py::TestPOFactory::test_gzfile PASSED [ 49%] 1214s tests/translate/storage/test_factory.py::TestPOFactory::test_bz2file PASSED [ 49%] 1214s tests/translate/storage/test_factory.py::TestPOFactory::test_directory PASSED [ 49%] 1214s tests/translate/storage/test_factory.py::TestXliffFactory::test_getclass PASSED [ 49%] 1214s tests/translate/storage/test_factory.py::TestXliffFactory::test_getobject_store PASSED [ 49%] 1214s tests/translate/storage/test_factory.py::TestXliffFactory::test_getobject PASSED [ 49%] 1214s tests/translate/storage/test_factory.py::TestXliffFactory::test_get_noname_object PASSED [ 49%] 1214s tests/translate/storage/test_factory.py::TestXliffFactory::test_gzfile PASSED [ 49%] 1214s tests/translate/storage/test_factory.py::TestXliffFactory::test_bz2file PASSED [ 49%] 1214s tests/translate/storage/test_factory.py::TestXliffFactory::test_directory PASSED [ 49%] 1214s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getclass PASSED [ 49%] 1214s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getobject_store PASSED [ 50%] 1214s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getobject PASSED [ 50%] 1214s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_get_noname_object PASSED [ 50%] 1214s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_gzfile PASSED [ 50%] 1214s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_bz2file PASSED [ 50%] 1214s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_directory PASSED [ 50%] 1214s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getclass PASSED [ 50%] 1214s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getobject_store PASSED [ 50%] 1214s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getobject PASSED [ 50%] 1214s tests/translate/storage/test_factory.py::TestWordfastFactory::test_get_noname_object PASSED [ 50%] 1214s tests/translate/storage/test_factory.py::TestWordfastFactory::test_gzfile PASSED [ 50%] 1214s tests/translate/storage/test_factory.py::TestWordfastFactory::test_bz2file PASSED [ 50%] 1214s tests/translate/storage/test_factory.py::TestWordfastFactory::test_directory PASSED [ 50%] 1214s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_isfuzzy PASSED [ 50%] 1214s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_create PASSED [ 50%] 1214s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_eq PASSED [ 50%] 1214s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_escapes PASSED [ 50%] 1214s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_difficult_escapes PASSED [ 50%] 1214s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_note_sanity PASSED [ 50%] 1214s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_target PASSED [ 50%] 1214s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_rich_get PASSED [ 50%] 1214s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_rich_set PASSED [ 50%] 1214s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_create_blank PASSED [ 50%] 1214s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_add PASSED [ 50%] 1214s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_remove PASSED [ 50%] 1214s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_find PASSED [ 50%] 1214s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_parse PASSED [ 50%] 1214s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_files PASSED [ 50%] 1214s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_save PASSED [ 50%] 1214s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_extensions PASSED [ 50%] 1214s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_mimetypes PASSED [ 50%] 1214s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_translate PASSED [ 50%] 1214s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_markup PASSED [ 50%] 1214s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_nonascii PASSED [ 50%] 1214s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_root_config_detect PASSED [ 51%] 1214s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_value_config_detect PASSED [ 51%] 1214s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_key_config_detect PASSED [ 51%] 1214s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_value_config_mixed_ok PASSED [ 51%] 1214s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_namespace_config_detect PASSED [ 51%] 1214s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_four_spaces PASSED [ 51%] 1214s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_tab PASSED [ 51%] 1214s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_none_linearizes PASSED [ 51%] 1214s tests/translate/storage/test_html.py::test_guess_encoding PASSED [ 51%] 1214s tests/translate/storage/test_html.py::TestHTMLParsing::test_mismatched_tags PASSED [ 51%] 1214s tests/translate/storage/test_html.py::TestHTMLParsing::test_self_closing_tags PASSED [ 51%] 1214s tests/translate/storage/test_html.py::TestHTMLParsing::test_escaping_script_and_pre PASSED [ 51%] 1214s tests/translate/storage/test_html.py::TestHTMLExtraction::test_strip_html PASSED [ 51%] 1214s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_tag_figcaption PASSED [ 51%] 1214s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_tag_caption_td_th PASSED [ 51%] 1214s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_attr_alt PASSED [ 51%] 1214s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_attr_title PASSED [ 51%] 1214s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_pre PASSED [ 51%] 1214s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_pre_code PASSED [ 51%] 1214s tests/translate/storage/test_ini.py::TestINIUnit::test_isfuzzy PASSED [ 51%] 1214s tests/translate/storage/test_ini.py::TestINIUnit::test_create PASSED [ 51%] 1214s tests/translate/storage/test_ini.py::TestINIUnit::test_eq PASSED [ 51%] 1214s tests/translate/storage/test_ini.py::TestINIUnit::test_escapes PASSED [ 51%] 1214s tests/translate/storage/test_ini.py::TestINIUnit::test_difficult_escapes PASSED [ 51%] 1214s tests/translate/storage/test_ini.py::TestINIUnit::test_note_sanity PASSED [ 51%] 1214s tests/translate/storage/test_ini.py::TestINIUnit::test_target PASSED [ 51%] 1214s tests/translate/storage/test_ini.py::TestINIUnit::test_rich_get PASSED [ 51%] 1214s tests/translate/storage/test_ini.py::TestINIUnit::test_rich_set PASSED [ 51%] 1214s tests/translate/storage/test_ini.py::TestINIStore::test_create_blank PASSED [ 51%] 1214s tests/translate/storage/test_ini.py::TestINIStore::test_add PASSED [ 51%] 1214s tests/translate/storage/test_ini.py::TestINIStore::test_remove PASSED [ 51%] 1214s tests/translate/storage/test_ini.py::TestINIStore::test_find PASSED [ 51%] 1214s tests/translate/storage/test_ini.py::TestINIStore::test_parse PASSED [ 51%] 1214s tests/translate/storage/test_ini.py::TestINIStore::test_files PASSED [ 52%] 1214s tests/translate/storage/test_ini.py::TestINIStore::test_save PASSED [ 52%] 1214s tests/translate/storage/test_ini.py::TestINIStore::test_extensions PASSED [ 52%] 1214s tests/translate/storage/test_ini.py::TestINIStore::test_mimetypes PASSED [ 52%] 1214s tests/translate/storage/test_ini.py::TestINIStore::test_translate PASSED [ 52%] 1214s tests/translate/storage/test_ini.py::TestINIStore::test_markup PASSED [ 52%] 1214s tests/translate/storage/test_ini.py::TestINIStore::test_nonascii PASSED [ 52%] 1214s tests/translate/storage/test_ini.py::TestINIStore::test_serialize PASSED [ 52%] 1214s tests/translate/storage/test_ini.py::TestINIStore::test_rem PASSED [ 52%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_isfuzzy PASSED [ 52%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_create PASSED [ 52%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_eq PASSED [ 52%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_escapes PASSED [ 52%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_difficult_escapes PASSED [ 52%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_note_sanity PASSED [ 52%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_target PASSED [ 52%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_rich_get PASSED [ 52%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_rich_set PASSED [ 52%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_create_blank PASSED [ 52%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_remove PASSED [ 52%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_find PASSED [ 52%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_parse PASSED [ 52%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_files PASSED [ 52%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_save PASSED [ 52%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_extensions PASSED [ 52%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_mimetypes PASSED [ 52%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_translate PASSED [ 52%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_markup PASSED [ 52%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_nonascii PASSED [ 52%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_serialize PASSED [ 52%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_can_not_detect PASSED [ 52%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_error PASSED [ 52%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_filter PASSED [ 52%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_ordering PASSED [ 52%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_args PASSED [ 53%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_bom PASSED [ 53%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_complex PASSED [ 53%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_complex_array PASSED [ 53%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add PASSED [ 53%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add_list_like PASSED [ 53%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add_blank PASSED [ 53%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_types PASSED [ 53%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_null PASSED [ 53%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_isfuzzy PASSED [ 53%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_create PASSED [ 53%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_eq PASSED [ 53%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_escapes PASSED [ 53%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_difficult_escapes PASSED [ 53%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_note_sanity PASSED [ 53%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_target PASSED [ 53%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_rich_get PASSED [ 53%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_rich_set PASSED [ 53%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_serialize PASSED [ 53%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_ordering PASSED [ 53%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_array PASSED [ 53%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add PASSED [ 53%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_index PASSED [ 53%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_index_nested PASSED [ 53%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_nested_list_mixed PASSED [ 53%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_list_to_dict PASSED [ 53%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_complex_keys PASSED [ 53%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_other PASSED [ 53%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[0]-expected0] PASSED [ 53%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[test[0]-expected1] PASSED [ 53%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[test[0][1][2][3]-expected2] PASSED [ 53%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[test]selection-expected3] PASSED [ 53%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[test][0]selection-expected4] PASSED [ 53%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[0][test]selection-expected5] PASSED [ 54%] 1214s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[-expected6] PASSED [ 54%] 1214s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_isfuzzy PASSED [ 54%] 1214s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_create PASSED [ 54%] 1214s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_eq PASSED [ 54%] 1214s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_escapes PASSED [ 54%] 1214s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_difficult_escapes PASSED [ 54%] 1214s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_note_sanity PASSED [ 54%] 1214s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_target PASSED [ 54%] 1214s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_rich_get PASSED [ 54%] 1214s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_rich_set PASSED [ 54%] 1214s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_create_blank PASSED [ 54%] 1214s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_add PASSED [ 54%] 1214s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_remove PASSED [ 54%] 1214s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_find PASSED [ 54%] 1214s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_parse PASSED [ 54%] 1214s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_files PASSED [ 54%] 1214s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_save PASSED [ 54%] 1214s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_extensions PASSED [ 54%] 1214s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_mimetypes PASSED [ 54%] 1214s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_translate PASSED [ 54%] 1214s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_markup PASSED [ 54%] 1214s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_nonascii PASSED [ 54%] 1214s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_serialize PASSED [ 54%] 1214s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_serialize_no_description PASSED [ 54%] 1214s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_set_target PASSED [ 54%] 1214s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_placeholders PASSED [ 54%] 1214s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_create_blank PASSED [ 54%] 1214s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_add PASSED [ 54%] 1214s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_remove PASSED [ 54%] 1214s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_find PASSED [ 54%] 1214s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_parse PASSED [ 54%] 1214s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_files PASSED [ 54%] 1214s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_save PASSED [ 55%] 1214s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_extensions PASSED [ 55%] 1214s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_mimetypes PASSED [ 55%] 1214s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_translate PASSED [ 55%] 1214s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_markup PASSED [ 55%] 1214s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_nonascii PASSED [ 55%] 1214s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_serialize PASSED [ 55%] 1214s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_units PASSED [ 55%] 1214s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_plurals PASSED [ 55%] 1214s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_nested_array PASSED [ 55%] 1214s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_new_plural PASSED [ 55%] 1214s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_new_plural_id PASSED [ 55%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_create_blank PASSED [ 55%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_add PASSED [ 55%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_remove PASSED [ 55%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_find PASSED [ 55%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_parse PASSED [ 55%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_files PASSED [ 55%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_save PASSED [ 55%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_extensions PASSED [ 55%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_mimetypes PASSED [ 55%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_translate PASSED [ 55%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_markup PASSED [ 55%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_nonascii PASSED [ 55%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_plurals PASSED [ 55%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_plurals_missing PASSED [ 55%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_case_no_msg PASSED [ 55%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_complex_id PASSED [ 55%] 1214s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_create_blank PASSED [ 55%] 1214s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_add PASSED [ 55%] 1214s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_remove PASSED [ 55%] 1214s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_find PASSED [ 55%] 1214s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_parse PASSED [ 55%] 1214s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_files PASSED [ 55%] 1214s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_save PASSED [ 56%] 1214s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_extensions PASSED [ 56%] 1214s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_mimetypes PASSED [ 56%] 1214s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_translate PASSED [ 56%] 1214s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_markup PASSED [ 56%] 1214s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_nonascii PASSED [ 56%] 1214s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_serialize PASSED [ 56%] 1214s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_units PASSED [ 56%] 1214s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_plurals PASSED [ 56%] 1214s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_nested_array PASSED [ 56%] 1214s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_new_plural PASSED [ 56%] 1214s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_ru PASSED [ 56%] 1214s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_create_blank PASSED [ 56%] 1214s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_add PASSED [ 56%] 1214s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_remove PASSED [ 56%] 1214s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_find PASSED [ 56%] 1214s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_parse PASSED [ 56%] 1214s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_files PASSED [ 56%] 1214s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_save PASSED [ 56%] 1214s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_extensions PASSED [ 56%] 1214s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_mimetypes PASSED [ 56%] 1214s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_translate PASSED [ 56%] 1214s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_markup PASSED [ 56%] 1214s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_nonascii PASSED [ 56%] 1214s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_serialize PASSED [ 56%] 1214s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_units PASSED [ 56%] 1214s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_plurals PASSED [ 56%] 1214s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_nested_array PASSED [ 56%] 1214s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_new_plural PASSED [ 56%] 1214s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_ru PASSED [ 56%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_create_blank PASSED [ 56%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_add PASSED [ 56%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_remove PASSED [ 56%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_find PASSED [ 57%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_parse PASSED [ 57%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_files PASSED [ 57%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_save PASSED [ 57%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_extensions PASSED [ 57%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_mimetypes PASSED [ 57%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_translate PASSED [ 57%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_markup PASSED [ 57%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_nonascii PASSED [ 57%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_plurals PASSED [ 57%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_plurals_missing PASSED [ 57%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_invalid PASSED [ 57%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_create_blank PASSED [ 57%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_add PASSED [ 57%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_remove PASSED [ 57%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_find PASSED [ 57%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_parse PASSED [ 57%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_files PASSED [ 57%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_save PASSED [ 57%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_extensions PASSED [ 57%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_mimetypes PASSED [ 57%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_translate PASSED [ 57%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_markup PASSED [ 57%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_nonascii PASSED [ 57%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_1 PASSED [ 57%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_2 PASSED [ 57%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_blank PASSED [ 57%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_missing PASSED [ 57%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_simplification PASSED [ 57%] 1214s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_invalid PASSED [ 57%] 1214s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_create_blank PASSED [ 57%] 1214s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_add PASSED [ 57%] 1214s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_remove PASSED [ 57%] 1214s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_find PASSED [ 57%] 1214s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_parse PASSED [ 58%] 1214s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_files PASSED [ 58%] 1214s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_save PASSED [ 58%] 1214s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_extensions PASSED [ 58%] 1214s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_mimetypes PASSED [ 58%] 1214s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_translate PASSED [ 58%] 1214s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_markup PASSED [ 58%] 1214s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_nonascii PASSED [ 58%] 1214s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_roundtrip PASSED [ 58%] 1214s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_create_blank PASSED [ 58%] 1214s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_add PASSED [ 58%] 1214s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_remove PASSED [ 58%] 1214s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_find PASSED [ 58%] 1214s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_parse PASSED [ 58%] 1214s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_files PASSED [ 58%] 1214s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_save PASSED [ 58%] 1214s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_extensions PASSED [ 58%] 1214s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_mimetypes PASSED [ 58%] 1214s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_translate PASSED [ 58%] 1214s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_markup PASSED [ 58%] 1214s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_nonascii PASSED [ 58%] 1214s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_roundtrip PASSED [ 58%] 1214s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_atx_heading PASSED [ 58%] 1214s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_autolink PASSED [ 58%] 1214s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_block_quote PASSED [ 58%] 1214s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_code_block PASSED [ 58%] 1214s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_code_span PASSED [ 58%] 1214s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_atx_heading PASSED [ 58%] 1214s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_document PASSED [ 58%] 1214s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_list_item PASSED [ 58%] 1214s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_escaped_character PASSED [ 58%] 1214s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_hard_line_break PASSED [ 58%] 1214s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_block PASSED [ 58%] 1214s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_character_entities PASSED [ 59%] 1214s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_span PASSED [ 59%] 1214s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_image_embedded_in_link PASSED [ 59%] 1214s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_collapsed_reference_link PASSED [ 59%] 1214s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_full_reference_link PASSED [ 59%] 1214s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_shortcut_reference_link PASSED [ 59%] 1214s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_merging_of_adjacent_placeholders PASSED [ 59%] 1214s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_nested_block_tokens PASSED [ 59%] 1214s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_nested_list PASSED [ 59%] 1214s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_paragraph_with_basic_markup PASSED [ 59%] 1214s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_paragraph_with_only_whitespace_and_placeholders PASSED [ 59%] 1214s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_placeholder_trimming PASSED [ 59%] 1214s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_image PASSED [ 59%] 1214s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_image_no_title PASSED [ 59%] 1214s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_link PASSED [ 59%] 1214s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_text_paragraph PASSED [ 59%] 1214s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_remove_placeholders_from_both_ends_of_translation_units PASSED [ 59%] 1214s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_setext_heading PASSED [ 59%] 1214s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_table_with_header PASSED [ 59%] 1214s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_thematic_break PASSED [ 59%] 1214s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_hard_line_break_in_translation_unit PASSED [ 59%] 1214s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_missing_placeholder PASSED [ 59%] 1214s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_duplicate_placeholder PASSED [ 59%] 1214s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_extraneous_placeholder PASSED [ 59%] 1214s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_reordered_placeholders PASSED [ 59%] 1214s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_invalid_markdown_in_translation PASSED [ 59%] 1214s tests/translate/storage/test_mo.py::TestMOUnit::test_isfuzzy PASSED [ 59%] 1214s tests/translate/storage/test_mo.py::TestMOUnit::test_create PASSED [ 59%] 1214s tests/translate/storage/test_mo.py::TestMOUnit::test_eq PASSED [ 59%] 1214s tests/translate/storage/test_mo.py::TestMOUnit::test_target PASSED [ 59%] 1214s tests/translate/storage/test_mo.py::TestMOUnit::test_escapes PASSED [ 59%] 1214s tests/translate/storage/test_mo.py::TestMOUnit::test_difficult_escapes PASSED [ 59%] 1214s tests/translate/storage/test_mo.py::TestMOUnit::test_note_sanity PASSED [ 59%] 1214s tests/translate/storage/test_mo.py::TestMOUnit::test_rich_get PASSED [ 60%] 1214s tests/translate/storage/test_mo.py::TestMOUnit::test_rich_set PASSED [ 60%] 1214s tests/translate/storage/test_mo.py::TestMOUnit::test_context PASSED [ 60%] 1214s tests/translate/storage/test_mo.py::TestMOFile::test_create_blank PASSED [ 60%] 1214s tests/translate/storage/test_mo.py::TestMOFile::test_add PASSED [ 60%] 1214s tests/translate/storage/test_mo.py::TestMOFile::test_remove PASSED [ 60%] 1214s tests/translate/storage/test_mo.py::TestMOFile::test_find PASSED [ 60%] 1214s tests/translate/storage/test_mo.py::TestMOFile::test_translate PASSED [ 60%] 1214s tests/translate/storage/test_mo.py::TestMOFile::test_parse PASSED [ 60%] 1214s tests/translate/storage/test_mo.py::TestMOFile::test_files PASSED [ 60%] 1214s tests/translate/storage/test_mo.py::TestMOFile::test_save PASSED [ 60%] 1214s tests/translate/storage/test_mo.py::TestMOFile::test_markup PASSED [ 60%] 1214s tests/translate/storage/test_mo.py::TestMOFile::test_nonascii PASSED [ 60%] 1214s tests/translate/storage/test_mo.py::TestMOFile::test_extensions PASSED [ 60%] 1214s tests/translate/storage/test_mo.py::TestMOFile::test_mimetypes PASSED [ 60%] 1214s tests/translate/storage/test_mo.py::TestMOFile::test_language PASSED [ 60%] 1214s tests/translate/storage/test_mo.py::TestMOFile::test_context PASSED [ 60%] 1214s tests/translate/storage/test_mo.py::TestMOFile::test_output SKIPPED [ 60%] 1214s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_isfuzzy PASSED [ 60%] 1214s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_create PASSED [ 60%] 1214s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_eq PASSED [ 60%] 1214s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_escapes PASSED [ 60%] 1214s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_difficult_escapes PASSED [ 60%] 1214s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_note_sanity PASSED [ 60%] 1214s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_target PASSED [ 60%] 1214s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_rich_get PASSED [ 60%] 1214s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_rich_set PASSED [ 60%] 1214s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_create_blank PASSED [ 60%] 1214s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_add PASSED [ 60%] 1214s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_remove PASSED [ 60%] 1214s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_find PASSED [ 60%] 1214s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_parse PASSED [ 60%] 1214s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_files PASSED [ 60%] 1214s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_save PASSED [ 60%] 1214s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_extensions PASSED [ 61%] 1214s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_mimetypes PASSED [ 61%] 1214s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_translate PASSED [ 61%] 1214s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_markup PASSED [ 61%] 1214s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_nonascii PASSED [ 61%] 1214s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[-] PASSED [ 61%] 1214s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String-String] PASSED [ 61%] 1214s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok}-String] PASSED [ 61%] 1214s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {OK}-String] PASSED [ 61%] 1214s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[\u015e\u0167\u0159\u012b\u019e\u0260 {ok}-\u015e\u0167\u0159\u012b\u019e\u0260] PASSED [ 61%] 1214s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String{ok}-String] PASSED [ 61%] 1214s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String{OK}-String] PASSED [ 61%] 1214s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok}-String] PASSED [ 61%] 1214s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok} -String] PASSED [ 61%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_isfuzzy PASSED [ 61%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_create PASSED [ 61%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_eq PASSED [ 61%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_target PASSED [ 61%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_escapes PASSED [ 61%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_difficult_escapes PASSED [ 61%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_note_sanity PASSED [ 61%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_rich_get PASSED [ 61%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_rich_set PASSED [ 61%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_translate_but_same PASSED [ 61%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_untranslated PASSED [ 61%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_comments PASSED [ 61%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_copy_target PASSED [ 61%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_create_blank PASSED [ 61%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_add PASSED [ 61%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_remove PASSED [ 61%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_find PASSED [ 61%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_translate PASSED [ 61%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_parse PASSED [ 61%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_files PASSED [ 62%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_save PASSED [ 62%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_markup PASSED [ 62%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_extensions PASSED [ 62%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_mimetypes PASSED [ 62%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_nonascii PASSED [ 62%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_format_layout PASSED [ 62%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_crlf PASSED [ 62%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_active_flag PASSED [ 62%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_multiline_comments PASSED [ 62%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_template PASSED [ 62%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[--False] PASSED [ 62%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ -Source -True] PASSED [ 62%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ {ok}-Source-True] PASSED [ 62%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ {ok} -Source-True] PASSED [ 62%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[{ok}-Source-True] PASSED [ 62%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_headers PASSED [ 62%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_not_headers PASSED [ 62%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[0] PASSED [ 62%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[1] PASSED [ 62%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[2] PASSED [ 62%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[3] PASSED [ 62%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_tag_comments PASSED [ 62%] 1214s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_maxlength PASSED [ 62%] 1214s tests/translate/storage/test_omegat.py::TestOtUnit::test_isfuzzy PASSED [ 62%] 1214s tests/translate/storage/test_omegat.py::TestOtUnit::test_create PASSED [ 62%] 1214s tests/translate/storage/test_omegat.py::TestOtUnit::test_eq PASSED [ 62%] 1214s tests/translate/storage/test_omegat.py::TestOtUnit::test_target PASSED [ 62%] 1214s tests/translate/storage/test_omegat.py::TestOtUnit::test_escapes PASSED [ 62%] 1214s tests/translate/storage/test_omegat.py::TestOtUnit::test_difficult_escapes PASSED [ 62%] 1214s tests/translate/storage/test_omegat.py::TestOtUnit::test_note_sanity PASSED [ 62%] 1214s tests/translate/storage/test_omegat.py::TestOtUnit::test_rich_get PASSED [ 62%] 1214s tests/translate/storage/test_omegat.py::TestOtUnit::test_rich_set PASSED [ 62%] 1214s tests/translate/storage/test_omegat.py::TestOtFile::test_create_blank PASSED [ 62%] 1214s tests/translate/storage/test_omegat.py::TestOtFile::test_add PASSED [ 63%] 1214s tests/translate/storage/test_omegat.py::TestOtFile::test_remove PASSED [ 63%] 1214s tests/translate/storage/test_omegat.py::TestOtFile::test_find PASSED [ 63%] 1214s tests/translate/storage/test_omegat.py::TestOtFile::test_translate PASSED [ 63%] 1214s tests/translate/storage/test_omegat.py::TestOtFile::test_parse PASSED [ 63%] 1214s tests/translate/storage/test_omegat.py::TestOtFile::test_files PASSED [ 63%] 1214s tests/translate/storage/test_omegat.py::TestOtFile::test_save PASSED [ 63%] 1214s tests/translate/storage/test_omegat.py::TestOtFile::test_markup PASSED [ 63%] 1214s tests/translate/storage/test_omegat.py::TestOtFile::test_nonascii PASSED [ 63%] 1214s tests/translate/storage/test_omegat.py::TestOtFile::test_mimetypes PASSED [ 63%] 1214s tests/translate/storage/test_omegat.py::TestOtFile::test_extensions XFAIL [ 63%] 1214s tests/translate/storage/test_oo.py::test_makekey PASSED [ 63%] 1214s tests/translate/storage/test_oo.py::test_escape_help_text PASSED [ 63%] 1214s tests/translate/storage/test_oo.py::TestOO::test_simpleentry PASSED [ 63%] 1214s tests/translate/storage/test_oo.py::TestOO::test_simpleentry_quickhelptest PASSED [ 63%] 1214s tests/translate/storage/test_oo.py::TestOO::test_simpleentry_title PASSED [ 63%] 1214s tests/translate/storage/test_oo.py::TestOO::test_blankline PASSED [ 63%] 1214s tests/translate/storage/test_oo.py::TestOO::test_fieldlength PASSED [ 63%] 1214s tests/translate/storage/test_oo.py::TestOO::test_escapes PASSED [ 63%] 1214s tests/translate/storage/test_php.py::test_php_escaping_single_quote PASSED [ 63%] 1214s tests/translate/storage/test_php.py::test_php_escaping_double_quote PASSED [ 63%] 1214s tests/translate/storage/test_php.py::TestPhpUnit::test_isfuzzy PASSED [ 63%] 1214s tests/translate/storage/test_php.py::TestPhpUnit::test_create PASSED [ 63%] 1214s tests/translate/storage/test_php.py::TestPhpUnit::test_eq PASSED [ 63%] 1214s tests/translate/storage/test_php.py::TestPhpUnit::test_escapes PASSED [ 63%] 1214s tests/translate/storage/test_php.py::TestPhpUnit::test_note_sanity PASSED [ 63%] 1214s tests/translate/storage/test_php.py::TestPhpUnit::test_target PASSED [ 63%] 1214s tests/translate/storage/test_php.py::TestPhpUnit::test_rich_get PASSED [ 63%] 1214s tests/translate/storage/test_php.py::TestPhpUnit::test_rich_set PASSED [ 63%] 1214s tests/translate/storage/test_php.py::TestPhpUnit::test_difficult_escapes PASSED [ 63%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_create_blank PASSED [ 63%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_add PASSED [ 63%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_remove PASSED [ 63%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_find PASSED [ 64%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_parse PASSED [ 64%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_files PASSED [ 64%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_save PASSED [ 64%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_extensions PASSED [ 64%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_mimetypes PASSED [ 64%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_translate PASSED [ 64%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_markup PASSED [ 64%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_nonascii PASSED [ 64%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition PASSED [ 64%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition_source PASSED [ 64%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_spaces_in_name PASSED [ 64%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_comment_definition PASSED [ 64%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_comment_blocks PASSED [ 64%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_comment_output PASSED [ 64%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_comment_add PASSED [ 64%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_multiline PASSED [ 64%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays PASSED [ 64%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_array_no_array_syntax PASSED [ 64%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_keys_with_spaces PASSED [ 64%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_non_textual PASSED [ 64%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_define PASSED [ 64%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_define_with_spaces_before_key PASSED [ 64%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_after_equal_delimiter PASSED [ 64%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_after_equal_delimiter_and_before_key PASSED [ 64%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_no_spaces_after_equal_delimiter PASSED [ 64%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_no_spaces_after_equaldel_but_before_key PASSED [ 64%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_entries_with_quotes PASSED [ 64%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_comments_at_entry_line_end PASSED [ 64%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_double_slash_comments_before_entries PASSED [ 64%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_before_end_delimiter PASSED [ 64%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simpledefinition_spaces_before_end_delimiter PASSED [ 64%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_no_trailing_comma PASSED [ 64%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_space_before_comma PASSED [ 65%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_space_before_array_declaration PASSED [ 65%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_declared_in_a_single_line PASSED [ 65%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_no_keys PASSED [ 65%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_no_keys_assigned_to_array PASSED [ 65%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_no_keys PASSED [ 65%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_assignment_in_line_where_multiline_comment_ends PASSED [ 65%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_using_short_array_syntax PASSED [ 65%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays PASSED [ 65%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_space_before_array_declaration PASSED [ 65%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_unnamed_nested_arrays PASSED [ 65%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_array_declaration_in_next_line PASSED [ 65%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_array_with_newline_after_delimiter PASSED [ 65%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_blank_entries PASSED [ 65%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_slashstar_in_string PASSED [ 65%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_heredoc_syntax PASSED [ 65%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition_after_define PASSED [ 65%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_quotes PASSED [ 65%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_concatenation PASSED [ 65%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_serialize PASSED [ 65%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_space_before_comma PASSED [ 65%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_equals_in_id PASSED [ 65%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_comma_in_string PASSED [ 65%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_nowdoc PASSED [ 65%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_plain_concatenation PASSED [ 65%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_array_keys PASSED [ 65%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_double_var PASSED [ 65%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_return_array PASSED [ 65%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_return_array_short PASSED [ 65%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_return_array_short_quotes PASSED [ 65%] 1214s tests/translate/storage/test_php.py::TestPhpFile::test_addunit PASSED [ 65%] 1214s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_isfuzzy PASSED [ 65%] 1214s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_create PASSED [ 65%] 1214s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_eq PASSED [ 65%] 1214s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_escapes PASSED [ 66%] 1214s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_difficult_escapes PASSED [ 66%] 1215s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_note_sanity PASSED [ 66%] 1215s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_target PASSED [ 66%] 1215s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_rich_get PASSED [ 66%] 1215s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_rich_set PASSED [ 66%] 1215s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_create_blank PASSED [ 66%] 1215s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_add PASSED [ 66%] 1215s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_remove PASSED [ 66%] 1215s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_find PASSED [ 66%] 1215s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_parse PASSED [ 66%] 1215s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_files PASSED [ 66%] 1215s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_save PASSED [ 66%] 1215s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_extensions PASSED [ 66%] 1215s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_mimetypes PASSED [ 66%] 1215s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_translate PASSED [ 66%] 1215s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_markup PASSED [ 66%] 1215s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_nonascii PASSED [ 66%] 1215s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_plurals PASSED [ 66%] 1215s tests/translate/storage/test_po.py::test_roundtrip_quoting PASSED [ 66%] 1215s tests/translate/storage/test_po.py::TestPOUnit::test_isfuzzy PASSED [ 66%] 1215s tests/translate/storage/test_po.py::TestPOUnit::test_create PASSED [ 66%] 1215s tests/translate/storage/test_po.py::TestPOUnit::test_eq PASSED [ 66%] 1215s tests/translate/storage/test_po.py::TestPOUnit::test_target PASSED [ 66%] 1215s tests/translate/storage/test_po.py::TestPOUnit::test_escapes PASSED [ 66%] 1215s tests/translate/storage/test_po.py::TestPOUnit::test_difficult_escapes PASSED [ 66%] 1215s tests/translate/storage/test_po.py::TestPOUnit::test_note_sanity PASSED [ 66%] 1215s tests/translate/storage/test_po.py::TestPOUnit::test_rich_get PASSED [ 66%] 1215s tests/translate/storage/test_po.py::TestPOUnit::test_rich_set PASSED [ 66%] 1215s tests/translate/storage/test_po.py::TestPOUnit::test_istranslatable PASSED [ 66%] 1215s tests/translate/storage/test_po.py::TestPOUnit::test_locations PASSED [ 66%] 1215s tests/translate/storage/test_po.py::TestPOUnit::test_nongettext_location PASSED [ 66%] 1215s tests/translate/storage/test_po.py::TestPOUnit::test_adding_empty_note PASSED [ 66%] 1215s tests/translate/storage/test_po.py::TestPOUnit::test_markreview PASSED [ 67%] 1215s tests/translate/storage/test_po.py::TestPOUnit::test_errors PASSED [ 67%] 1215s tests/translate/storage/test_po.py::TestPOUnit::test_no_plural_settarget PASSED [ 67%] 1215s tests/translate/storage/test_po.py::TestPOUnit::test_wrapping_bug PASSED [ 67%] 1215s tests/translate/storage/test_po.py::TestPOUnit::test_extract_msgidcomments_from_text PASSED [ 67%] 1215s tests/translate/storage/test_po.py::TestPOUnit::test_isheader PASSED [ 67%] 1215s tests/translate/storage/test_po.py::TestPOUnit::test_buildfromunit PASSED [ 67%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_create_blank PASSED [ 67%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_add PASSED [ 67%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_remove PASSED [ 67%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_find PASSED [ 67%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_translate PASSED [ 67%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_parse PASSED [ 67%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_files PASSED [ 67%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_save PASSED [ 67%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_markup PASSED [ 67%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_nonascii PASSED [ 67%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_extensions PASSED [ 67%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_mimetypes PASSED [ 67%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_context_only PASSED [ 67%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_simpleentry PASSED [ 67%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_copy PASSED [ 67%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_parse_source_string PASSED [ 67%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_parse_file PASSED [ 67%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_unicode PASSED [ 67%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_plurals PASSED [ 67%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_plural_unicode PASSED [ 67%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_nongettext_location PASSED [ 67%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_percent_location PASSED [ 67%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_kde_plurals XFAIL [ 67%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_empty_lines_notes PASSED [ 67%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_fuzzy PASSED [ 67%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_untranslated XFAIL [ 67%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_merging_automaticcomments PASSED [ 67%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_malformed_units PASSED [ 68%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_malformed_obsolete_units PASSED [ 68%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_uniforum_po PASSED [ 68%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_obsolete PASSED [ 68%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_obsolete_with_prev_msgid PASSED [ 68%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_header_escapes PASSED [ 68%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete PASSED [ 68%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_plural PASSED [ 68%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_msgctxt PASSED [ 68%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_msgidcomments PASSED [ 68%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_multiline_obsolete PASSED [ 68%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_merge_duplicates PASSED [ 68%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_merge_mixed_sources PASSED [ 68%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_parse_context PASSED [ 68%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_parse_advanced_context PASSED [ 68%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_kde_context PASSED [ 68%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_broken_kde_context PASSED [ 68%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_id PASSED [ 68%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_non_ascii_header_comments PASSED [ 68%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_non_ascii_header_comments_2 PASSED [ 68%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_final_slash PASSED [ 68%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_unfinished_lines PASSED [ 68%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_encoding_change PASSED [ 68%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_istranslated PASSED [ 68%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_wrapping PASSED [ 68%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_wrapping_cjk PASSED [ 68%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_wrap_emoji PASSED [ 68%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_wrap_parenthesis XFAIL [ 68%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_wrap_gettext PASSED [ 68%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_msgidcomments PASSED [ 68%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_unicode_ids PASSED [ 68%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_syntax_error PASSED [ 68%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_invalid PASSED [ 68%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_wrapped_msgid PASSED [ 69%] 1215s tests/translate/storage/test_po.py::TestPOFile::test_missing_plural PASSED [ 69%] 1215s tests/translate/storage/test_pocommon.py::test_roundtrip_quote_plus PASSED [ 69%] 1215s tests/translate/storage/test_poheader.py::test_parseheaderstring PASSED [ 69%] 1215s tests/translate/storage/test_poheader.py::test_update PASSED [ 69%] 1215s tests/translate/storage/test_poheader.py::test_po_dates PASSED [ 69%] 1215s tests/translate/storage/test_poheader.py::test_timezones PASSED [ 69%] 1215s tests/translate/storage/test_poheader.py::test_header_blank PASSED [ 69%] 1215s tests/translate/storage/test_poheader.py::test_plural_equation PASSED [ 69%] 1215s tests/translate/storage/test_poheader.py::test_plural_equation_across_lines PASSED [ 69%] 1215s tests/translate/storage/test_poheader.py::test_updatecontributor PASSED [ 69%] 1215s tests/translate/storage/test_poheader.py::test_updatecontributor_header PASSED [ 69%] 1215s tests/translate/storage/test_poheader.py::test_language PASSED [ 69%] 1215s tests/translate/storage/test_poheader.py::test_project PASSED [ 69%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_isfuzzy PASSED [ 69%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_create PASSED [ 69%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_eq PASSED [ 69%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_target PASSED [ 69%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_escapes PASSED [ 69%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_difficult_escapes PASSED [ 69%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_note_sanity PASSED [ 69%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_rich_get PASSED [ 69%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_rich_set PASSED [ 69%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_markreview PASSED [ 69%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_errors PASSED [ 69%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_accepted_control_chars PASSED [ 69%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_unaccepted_control_chars PASSED [ 69%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_plurals PASSED [ 69%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_ids PASSED [ 69%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_create_blank PASSED [ 69%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_add PASSED [ 69%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_remove PASSED [ 69%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_find PASSED [ 69%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_translate PASSED [ 70%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_files PASSED [ 70%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_save PASSED [ 70%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_markup PASSED [ 70%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_nonascii PASSED [ 70%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_extensions PASSED [ 70%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_mimetypes PASSED [ 70%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_basic PASSED [ 70%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_namespace PASSED [ 70%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_rich_source PASSED [ 70%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_rich_target PASSED [ 70%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_source PASSED [ 70%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_target PASSED [ 70%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_sourcelanguage PASSED [ 70%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_targetlanguage PASSED [ 70%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_targetlanguage_multi PASSED [ 70%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_alttrans PASSED [ 70%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_fuzzy PASSED [ 70%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_xml_space PASSED [ 70%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parsing PASSED [ 70%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_entities PASSED [ 70%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_multiple_filenodes PASSED [ 70%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_indent PASSED [ 70%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_add_target PASSED [ 70%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_preserve PASSED [ 70%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_closing_tags PASSED [ 70%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_context_groups PASSED [ 70%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_getlocations PASSED [ 70%] 1215s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_addlocation PASSED [ 70%] 1216s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_huge PASSED [ 70%] 1216s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_preserve_add PASSED [ 70%] 1216s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parse PASSED [ 70%] 1216s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parse_plural_alpha_id PASSED [ 70%] 1216s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_notes PASSED [ 70%] 1216s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_plural PASSED [ 71%] 1216s tests/translate/storage/test_properties.py::test_find_delimiter_pos_simple PASSED [ 71%] 1216s tests/translate/storage/test_properties.py::test_find_delimiter_pos_multiple PASSED [ 71%] 1216s tests/translate/storage/test_properties.py::test_find_delimiter_pos_none PASSED [ 71%] 1216s tests/translate/storage/test_properties.py::test_find_delimiter_pos_whitespace PASSED [ 71%] 1216s tests/translate/storage/test_properties.py::test_find_delimiter_pos_escapes PASSED [ 71%] 1216s tests/translate/storage/test_properties.py::test_is_line_continuation PASSED [ 71%] 1216s tests/translate/storage/test_properties.py::test_key_strip PASSED [ 71%] 1216s tests/translate/storage/test_properties.py::test_get_comment_one_line PASSED [ 71%] 1216s tests/translate/storage/test_properties.py::test_get_comment_start PASSED [ 71%] 1216s tests/translate/storage/test_properties.py::test_get_comment_end PASSED [ 71%] 1216s tests/translate/storage/test_properties.py::TestPropUnit::test_isfuzzy PASSED [ 71%] 1216s tests/translate/storage/test_properties.py::TestPropUnit::test_create PASSED [ 71%] 1216s tests/translate/storage/test_properties.py::TestPropUnit::test_eq PASSED [ 71%] 1216s tests/translate/storage/test_properties.py::TestPropUnit::test_escapes PASSED [ 71%] 1216s tests/translate/storage/test_properties.py::TestPropUnit::test_difficult_escapes PASSED [ 71%] 1216s tests/translate/storage/test_properties.py::TestPropUnit::test_note_sanity PASSED [ 71%] 1216s tests/translate/storage/test_properties.py::TestPropUnit::test_target PASSED [ 71%] 1216s tests/translate/storage/test_properties.py::TestPropUnit::test_rich_get PASSED [ 71%] 1216s tests/translate/storage/test_properties.py::TestPropUnit::test_rich_set PASSED [ 71%] 1216s tests/translate/storage/test_properties.py::TestGwtProp::test_create_blank PASSED [ 71%] 1216s tests/translate/storage/test_properties.py::TestGwtProp::test_add PASSED [ 71%] 1216s tests/translate/storage/test_properties.py::TestGwtProp::test_remove PASSED [ 71%] 1216s tests/translate/storage/test_properties.py::TestGwtProp::test_find PASSED [ 71%] 1216s tests/translate/storage/test_properties.py::TestGwtProp::test_parse PASSED [ 71%] 1216s tests/translate/storage/test_properties.py::TestGwtProp::test_files PASSED [ 71%] 1216s tests/translate/storage/test_properties.py::TestGwtProp::test_save PASSED [ 71%] 1216s tests/translate/storage/test_properties.py::TestGwtProp::test_extensions PASSED [ 71%] 1216s tests/translate/storage/test_properties.py::TestGwtProp::test_mimetypes PASSED [ 71%] 1216s tests/translate/storage/test_properties.py::TestGwtProp::test_translate PASSED [ 71%] 1216s tests/translate/storage/test_properties.py::TestGwtProp::test_markup PASSED [ 71%] 1216s tests/translate/storage/test_properties.py::TestGwtProp::test_nonascii PASSED [ 71%] 1216s tests/translate/storage/test_properties.py::TestGwtProp::test_quotes PASSED [ 71%] 1216s tests/translate/storage/test_properties.py::TestGwtProp::test_simpledefinition PASSED [ 72%] 1216s tests/translate/storage/test_properties.py::TestGwtProp::test_doubledefinition PASSED [ 72%] 1216s tests/translate/storage/test_properties.py::TestGwtProp::test_doubledefinition_source PASSED [ 72%] 1216s tests/translate/storage/test_properties.py::TestGwtProp::test_reduce PASSED [ 72%] 1216s tests/translate/storage/test_properties.py::TestGwtProp::test_increase PASSED [ 72%] 1216s tests/translate/storage/test_properties.py::TestGwtProp::test_extra_plurals PASSED [ 72%] 1216s tests/translate/storage/test_properties.py::TestGwtProp::test_non_plurals PASSED [ 72%] 1216s tests/translate/storage/test_properties.py::TestGwtProp::test_encoding PASSED [ 72%] 1216s tests/translate/storage/test_properties.py::TestProp::test_create_blank PASSED [ 72%] 1216s tests/translate/storage/test_properties.py::TestProp::test_add PASSED [ 72%] 1216s tests/translate/storage/test_properties.py::TestProp::test_remove PASSED [ 72%] 1216s tests/translate/storage/test_properties.py::TestProp::test_find PASSED [ 72%] 1216s tests/translate/storage/test_properties.py::TestProp::test_parse PASSED [ 72%] 1216s tests/translate/storage/test_properties.py::TestProp::test_files PASSED [ 72%] 1216s tests/translate/storage/test_properties.py::TestProp::test_save PASSED [ 72%] 1216s tests/translate/storage/test_properties.py::TestProp::test_extensions PASSED [ 72%] 1216s tests/translate/storage/test_properties.py::TestProp::test_mimetypes PASSED [ 72%] 1216s tests/translate/storage/test_properties.py::TestProp::test_translate PASSED [ 72%] 1216s tests/translate/storage/test_properties.py::TestProp::test_markup PASSED [ 72%] 1216s tests/translate/storage/test_properties.py::TestProp::test_nonascii PASSED [ 72%] 1216s tests/translate/storage/test_properties.py::TestProp::test_simpledefinition PASSED [ 72%] 1216s tests/translate/storage/test_properties.py::TestProp::test_simpledefinition_source PASSED [ 72%] 1216s tests/translate/storage/test_properties.py::TestProp::test_controlutf8_source PASSED [ 72%] 1216s tests/translate/storage/test_properties.py::TestProp::test_control_source PASSED [ 72%] 1216s tests/translate/storage/test_properties.py::TestProp::test_unicode_escaping PASSED [ 72%] 1216s tests/translate/storage/test_properties.py::TestProp::test_newlines_startend PASSED [ 72%] 1216s tests/translate/storage/test_properties.py::TestProp::test_space PASSED [ 72%] 1216s tests/translate/storage/test_properties.py::TestProp::test_whitespace_handling PASSED [ 72%] 1216s tests/translate/storage/test_properties.py::TestProp::test_key_value_delimiters_simple PASSED [ 72%] 1216s tests/translate/storage/test_properties.py::TestProp::test_comments PASSED [ 72%] 1216s tests/translate/storage/test_properties.py::TestProp::test_latin1 PASSED [ 72%] 1216s tests/translate/storage/test_properties.py::TestProp::test_fullspec_delimiters PASSED [ 72%] 1216s tests/translate/storage/test_properties.py::TestProp::test_fullspec_escaped_key PASSED [ 72%] 1216s tests/translate/storage/test_properties.py::TestProp::test_fullspec_line_continuation PASSED [ 72%] 1216s tests/translate/storage/test_properties.py::TestProp::test_fullspec_key_without_value PASSED [ 73%] 1216s tests/translate/storage/test_properties.py::TestProp::test_mac_strings PASSED [ 73%] 1216s tests/translate/storage/test_properties.py::TestProp::test_utf_16_save PASSED [ 73%] 1216s tests/translate/storage/test_properties.py::TestProp::test_mac_multiline_strings PASSED [ 73%] 1216s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_unicode PASSED [ 73%] 1216s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_utf8 PASSED [ 73%] 1216s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_newlines PASSED [ 73%] 1216s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_comments PASSED [ 73%] 1216s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_multilines_comments PASSED [ 73%] 1216s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_comments_dropping PASSED [ 73%] 1216s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_quotes PASSED [ 73%] 1216s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_equals PASSED [ 73%] 1216s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_serialization PASSED [ 73%] 1216s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_double_backslashes PASSED [ 73%] 1216s tests/translate/storage/test_properties.py::TestProp::test_override_encoding PASSED [ 73%] 1216s tests/translate/storage/test_properties.py::TestProp::test_trailing_comments PASSED [ 73%] 1216s tests/translate/storage/test_properties.py::TestProp::test_utf16_byte_order_mark PASSED [ 73%] 1216s tests/translate/storage/test_properties.py::TestProp::test_raise_ioerror_if_cannot_detect_encoding PASSED [ 73%] 1216s tests/translate/storage/test_properties.py::TestProp::test_utf8_byte_order_mark PASSED [ 73%] 1216s tests/translate/storage/test_properties.py::TestProp::test_joomla_set_target PASSED [ 73%] 1216s tests/translate/storage/test_properties.py::TestProp::test_joomla PASSED [ 73%] 1216s tests/translate/storage/test_properties.py::TestProp::test_joomla_escape PASSED [ 73%] 1216s tests/translate/storage/test_properties.py::TestProp::test_serialize_missing_delimiter PASSED [ 73%] 1216s tests/translate/storage/test_properties.py::TestProp::test_serialize_missing_value PASSED [ 73%] 1216s tests/translate/storage/test_properties.py::TestProp::test_multi_comments PASSED [ 73%] 1216s tests/translate/storage/test_properties.py::TestProp::test_serialize_note PASSED [ 73%] 1216s tests/translate/storage/test_properties.py::TestProp::test_serialize_long_note PASSED [ 73%] 1216s tests/translate/storage/test_properties.py::TestXWiki::test_create_blank PASSED [ 73%] 1216s tests/translate/storage/test_properties.py::TestXWiki::test_add PASSED [ 73%] 1216s tests/translate/storage/test_properties.py::TestXWiki::test_remove PASSED [ 73%] 1216s tests/translate/storage/test_properties.py::TestXWiki::test_find PASSED [ 73%] 1216s tests/translate/storage/test_properties.py::TestXWiki::test_parse PASSED [ 73%] 1216s tests/translate/storage/test_properties.py::TestXWiki::test_files PASSED [ 73%] 1216s tests/translate/storage/test_properties.py::TestXWiki::test_save PASSED [ 74%] 1216s tests/translate/storage/test_properties.py::TestXWiki::test_extensions PASSED [ 74%] 1216s tests/translate/storage/test_properties.py::TestXWiki::test_mimetypes PASSED [ 74%] 1216s tests/translate/storage/test_properties.py::TestXWiki::test_translate PASSED [ 74%] 1216s tests/translate/storage/test_properties.py::TestXWiki::test_markup PASSED [ 74%] 1216s tests/translate/storage/test_properties.py::TestXWiki::test_nonascii PASSED [ 74%] 1216s tests/translate/storage/test_properties.py::TestXWiki::test_simpledefinition PASSED [ 74%] 1216s tests/translate/storage/test_properties.py::TestXWiki::test_missing_definition PASSED [ 74%] 1216s tests/translate/storage/test_properties.py::TestXWiki::test_missing_definition_source PASSED [ 74%] 1216s tests/translate/storage/test_properties.py::TestXWiki::test_definition_with_simple_quote PASSED [ 74%] 1216s tests/translate/storage/test_properties.py::TestXWiki::test_definition_with_simple_quote_and_argument PASSED [ 74%] 1216s tests/translate/storage/test_properties.py::TestXWiki::test_header_preserved PASSED [ 74%] 1216s tests/translate/storage/test_properties.py::TestXWiki::test_blank_line_before_comment_preserved PASSED [ 74%] 1216s tests/translate/storage/test_properties.py::TestXWiki::test_deprecated_comments_preserved PASSED [ 74%] 1216s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_create_blank PASSED [ 74%] 1216s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_add PASSED [ 74%] 1216s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_remove PASSED [ 74%] 1216s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_find PASSED [ 74%] 1216s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_parse PASSED [ 74%] 1216s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_files PASSED [ 74%] 1216s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_save PASSED [ 74%] 1216s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_extensions PASSED [ 74%] 1216s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_mimetypes PASSED [ 74%] 1216s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_translate PASSED [ 74%] 1216s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_markup PASSED [ 74%] 1216s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_nonascii PASSED [ 74%] 1216s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_simpledefinition PASSED [ 74%] 1216s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_missing_definition PASSED [ 74%] 1216s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_missing_definition_source PASSED [ 74%] 1216s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_simple_quote PASSED [ 74%] 1216s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_simple_quote_and_argument PASSED [ 74%] 1216s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_encoded_html PASSED [ 74%] 1216s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_cleaning_attributes PASSED [ 74%] 1216s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_translate_source PASSED [ 75%] 1216s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_create_blank PASSED [ 75%] 1216s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_add PASSED [ 75%] 1216s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_find PASSED [ 75%] 1216s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_extensions PASSED [ 75%] 1216s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_mimetypes PASSED [ 75%] 1216s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_translate PASSED [ 75%] 1216s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_markup PASSED [ 75%] 1216s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_nonascii PASSED [ 75%] 1216s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_simpledefinition PASSED [ 75%] 1216s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_parse PASSED [ 75%] 1216s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_files PASSED [ 75%] 1216s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_save PASSED [ 75%] 1216s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_cleaning_attributes PASSED [ 75%] 1216s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_remove XFAIL [ 75%] 1216s tests/translate/storage/test_pypo.py::TestHelpers::test_unescape PASSED [ 75%] 1216s tests/translate/storage/test_pypo.py::TestHelpers::test_quoteforpo PASSED [ 75%] 1216s tests/translate/storage/test_pypo.py::TestHelpers::test_quoteforpo_escaped_quotes PASSED [ 75%] 1216s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_isfuzzy PASSED [ 75%] 1216s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_create PASSED [ 75%] 1216s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_eq PASSED [ 75%] 1216s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_target PASSED [ 75%] 1216s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_escapes PASSED [ 75%] 1216s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_difficult_escapes PASSED [ 75%] 1216s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_note_sanity PASSED [ 75%] 1216s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_rich_get PASSED [ 75%] 1216s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_rich_set PASSED [ 75%] 1216s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_istranslatable PASSED [ 75%] 1216s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_locations PASSED [ 75%] 1216s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_nongettext_location PASSED [ 75%] 1216s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_adding_empty_note PASSED [ 75%] 1216s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_markreview PASSED [ 75%] 1216s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_errors PASSED [ 75%] 1216s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_no_plural_settarget PASSED [ 75%] 1216s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrapping_bug PASSED [ 76%] 1216s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_extract_msgidcomments_from_text PASSED [ 76%] 1216s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_isheader PASSED [ 76%] 1216s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_buildfromunit PASSED [ 76%] 1216s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_plurals PASSED [ 76%] 1216s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_plural_reduction PASSED [ 76%] 1216s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_notes PASSED [ 76%] 1216s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_notes_withcomments PASSED [ 76%] 1216s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_firstlines PASSED [ 76%] 1216s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_newlines PASSED [ 76%] 1216s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_max_line_length PASSED [ 76%] 1216s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_slash PASSED [ 76%] 1216s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_spacing_max_line PASSED [ 76%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_create_blank PASSED [ 76%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_add PASSED [ 76%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_remove PASSED [ 76%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_find PASSED [ 76%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_translate PASSED [ 76%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse PASSED [ 76%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_files PASSED [ 76%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_save PASSED [ 76%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_markup PASSED [ 76%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_nonascii PASSED [ 76%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_extensions PASSED [ 76%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mimetypes PASSED [ 76%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_context_only PASSED [ 76%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_simpleentry PASSED [ 76%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_copy PASSED [ 76%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_source_string PASSED [ 76%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_file PASSED [ 76%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode PASSED [ 76%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_plurals PASSED [ 76%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_plural_unicode PASSED [ 76%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_nongettext_location PASSED [ 77%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_percent_location PASSED [ 77%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_plurals XFAIL [ 77%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_empty_lines_notes PASSED [ 77%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_fuzzy PASSED [ 77%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_untranslated XFAIL [ 77%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merging_automaticcomments PASSED [ 77%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_malformed_units PASSED [ 77%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_malformed_obsolete_units PASSED [ 77%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_uniforum_po PASSED [ 77%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_obsolete PASSED [ 77%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_obsolete_with_prev_msgid PASSED [ 77%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_header_escapes PASSED [ 77%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete PASSED [ 77%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_plural PASSED [ 77%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_msgctxt PASSED [ 77%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_msgidcomments PASSED [ 77%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_multiline_obsolete PASSED [ 77%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_duplicates PASSED [ 77%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_mixed_sources PASSED [ 77%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_context PASSED [ 77%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_advanced_context PASSED [ 77%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_context PASSED [ 77%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_broken_kde_context PASSED [ 77%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_id PASSED [ 77%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_non_ascii_header_comments PASSED [ 77%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_non_ascii_header_comments_2 PASSED [ 77%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_final_slash PASSED [ 77%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unfinished_lines PASSED [ 77%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_encoding_change PASSED [ 77%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_istranslated PASSED [ 77%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapping PASSED [ 77%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapping_cjk PASSED [ 77%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_emoji PASSED [ 77%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_parenthesis XFAIL [ 78%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_gettext PASSED [ 78%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_msgidcomments PASSED [ 78%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode_ids PASSED [ 78%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_syntax_error PASSED [ 78%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapped_msgid PASSED [ 78%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_missing_plural PASSED [ 78%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_combine_msgidcomments PASSED [ 78%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_duplicates_msgctxt PASSED [ 78%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_blanks PASSED [ 78%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_output_str_unicode PASSED [ 78%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_posections PASSED [ 78%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_typecomments PASSED [ 78%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unassociated_comments PASSED [ 78%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode_header PASSED [ 78%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_prevmsgid_parse PASSED [ 78%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap PASSED [ 78%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_newlines PASSED [ 78%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unix_newlines PASSED [ 78%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines PASSED [ 78%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mac_newlines PASSED [ 78%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines PASSED [ 78%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_header PASSED [ 78%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_comment PASSED [ 78%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_bom PASSED [ 78%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_long_msgidcomments PASSED [ 78%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_incomplete PASSED [ 78%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_invalid PASSED [ 78%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines_write PASSED [ 78%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_typecomment XFAIL [ 78%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines_typecomment PASSED [ 78%] 1216s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_custom PASSED [ 78%] 1216s tests/translate/storage/test_qm.py::TestQtUnit::test_isfuzzy PASSED [ 78%] 1216s tests/translate/storage/test_qm.py::TestQtUnit::test_create PASSED [ 79%] 1216s tests/translate/storage/test_qm.py::TestQtUnit::test_eq PASSED [ 79%] 1216s tests/translate/storage/test_qm.py::TestQtUnit::test_target PASSED [ 79%] 1216s tests/translate/storage/test_qm.py::TestQtUnit::test_escapes PASSED [ 79%] 1216s tests/translate/storage/test_qm.py::TestQtUnit::test_difficult_escapes PASSED [ 79%] 1216s tests/translate/storage/test_qm.py::TestQtUnit::test_note_sanity PASSED [ 79%] 1216s tests/translate/storage/test_qm.py::TestQtUnit::test_rich_get PASSED [ 79%] 1216s tests/translate/storage/test_qm.py::TestQtUnit::test_rich_set PASSED [ 79%] 1216s tests/translate/storage/test_qm.py::TestQtFile::test_create_blank PASSED [ 79%] 1216s tests/translate/storage/test_qm.py::TestQtFile::test_find PASSED [ 79%] 1216s tests/translate/storage/test_qm.py::TestQtFile::test_translate PASSED [ 79%] 1216s tests/translate/storage/test_qm.py::TestQtFile::test_markup PASSED [ 79%] 1216s tests/translate/storage/test_qm.py::TestQtFile::test_extensions PASSED [ 79%] 1216s tests/translate/storage/test_qm.py::TestQtFile::test_mimetypes PASSED [ 79%] 1216s tests/translate/storage/test_qm.py::TestQtFile::test_parse PASSED [ 79%] 1216s tests/translate/storage/test_qm.py::TestQtFile::test_save PASSED [ 79%] 1216s tests/translate/storage/test_qm.py::TestQtFile::test_files PASSED [ 79%] 1216s tests/translate/storage/test_qm.py::TestQtFile::test_nonascii PASSED [ 79%] 1216s tests/translate/storage/test_qm.py::TestQtFile::test_add PASSED [ 79%] 1216s tests/translate/storage/test_qm.py::TestQtFile::test_remove PASSED [ 79%] 1216s tests/translate/storage/test_qph.py::TestQphUnit::test_isfuzzy PASSED [ 79%] 1216s tests/translate/storage/test_qph.py::TestQphUnit::test_create PASSED [ 79%] 1216s tests/translate/storage/test_qph.py::TestQphUnit::test_eq PASSED [ 79%] 1216s tests/translate/storage/test_qph.py::TestQphUnit::test_target PASSED [ 79%] 1216s tests/translate/storage/test_qph.py::TestQphUnit::test_escapes PASSED [ 79%] 1216s tests/translate/storage/test_qph.py::TestQphUnit::test_difficult_escapes PASSED [ 79%] 1216s tests/translate/storage/test_qph.py::TestQphUnit::test_note_sanity PASSED [ 79%] 1216s tests/translate/storage/test_qph.py::TestQphUnit::test_rich_get PASSED [ 79%] 1216s tests/translate/storage/test_qph.py::TestQphUnit::test_rich_set PASSED [ 79%] 1216s tests/translate/storage/test_qph.py::TestQphFile::test_create_blank PASSED [ 79%] 1216s tests/translate/storage/test_qph.py::TestQphFile::test_add PASSED [ 79%] 1216s tests/translate/storage/test_qph.py::TestQphFile::test_remove PASSED [ 79%] 1216s tests/translate/storage/test_qph.py::TestQphFile::test_find PASSED [ 79%] 1216s tests/translate/storage/test_qph.py::TestQphFile::test_translate PASSED [ 80%] 1216s tests/translate/storage/test_qph.py::TestQphFile::test_parse PASSED [ 80%] 1216s tests/translate/storage/test_qph.py::TestQphFile::test_files PASSED [ 80%] 1216s tests/translate/storage/test_qph.py::TestQphFile::test_save PASSED [ 80%] 1216s tests/translate/storage/test_qph.py::TestQphFile::test_markup PASSED [ 80%] 1216s tests/translate/storage/test_qph.py::TestQphFile::test_nonascii PASSED [ 80%] 1216s tests/translate/storage/test_qph.py::TestQphFile::test_extensions PASSED [ 80%] 1216s tests/translate/storage/test_qph.py::TestQphFile::test_mimetypes PASSED [ 80%] 1216s tests/translate/storage/test_qph.py::TestQphFile::test_basic PASSED [ 80%] 1216s tests/translate/storage/test_qph.py::TestQphFile::test_source PASSED [ 80%] 1216s tests/translate/storage/test_qph.py::TestQphFile::test_target PASSED [ 80%] 1216s tests/translate/storage/test_qph.py::TestQphFile::test_language PASSED [ 80%] 1216s tests/translate/storage/test_rc.py::test_escaping PASSED [ 80%] 1216s tests/translate/storage/test_rc.py::TestRcFile::test_parse_only_comments PASSED [ 80%] 1216s tests/translate/storage/test_rc.py::TestRcFile::test_parse_only_textinclude PASSED [ 80%] 1216s tests/translate/storage/test_rc.py::TestRcFile::test_parse_dialog PASSED [ 80%] 1216s tests/translate/storage/test_rc.py::TestRcFile::test_parse_stringtable PASSED [ 80%] 1216s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_lf PASSED [ 80%] 1216s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_crlf PASSED [ 80%] 1216s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_cr PASSED [ 80%] 1216s tests/translate/storage/test_rc.py::TestRcFile::test_parse_no_language PASSED [ 80%] 1216s tests/translate/storage/test_rc.py::TestRcFile::test_textinclude PASSED [ 80%] 1216s tests/translate/storage/test_rc.py::TestRcFile::test_multiline PASSED [ 80%] 1216s tests/translate/storage/test_rc.py::TestRcFile::test_str PASSED [ 80%] 1216s tests/translate/storage/test_rc.py::TestRcFile::test_empty PASSED [ 80%] 1216s tests/translate/storage/test_rc.py::TestRcFile::test_utf_8 PASSED [ 80%] 1216s tests/translate/storage/test_rc.py::TestRcFile::test_utf_16 PASSED [ 80%] 1216s tests/translate/storage/test_rc.py::TestRcFile::test_comment PASSED [ 80%] 1217s tests/translate/storage/test_rc.py::TestRcFile::test_stringtables PASSED [ 80%] 1217s tests/translate/storage/test_rc.py::TestRcFile::test_textinclude_appstudio PASSED [ 80%] 1217s tests/translate/storage/test_rc.py::TestRcFile::test_id_whitespace PASSED [ 80%] 1217s tests/translate/storage/test_rc.py::TestRcFile::test_menu_comment PASSED [ 80%] 1217s tests/translate/storage/test_rc.py::TestRcFile::test_decompiled PASSED [ 80%] 1217s tests/translate/storage/test_rc.py::TestRcFile::test_quotes PASSED [ 80%] 1217s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_isfuzzy PASSED [ 81%] 1217s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_create PASSED [ 81%] 1217s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_eq PASSED [ 81%] 1217s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_escapes PASSED [ 81%] 1217s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_difficult_escapes PASSED [ 81%] 1217s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_note_sanity PASSED [ 81%] 1217s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_target PASSED [ 81%] 1217s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_rich_get PASSED [ 81%] 1217s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_rich_set PASSED [ 81%] 1217s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_create_blank PASSED [ 81%] 1217s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_add PASSED [ 81%] 1217s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_remove PASSED [ 81%] 1217s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_find PASSED [ 81%] 1217s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_parse PASSED [ 81%] 1217s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_files PASSED [ 81%] 1217s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_save PASSED [ 81%] 1217s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_extensions PASSED [ 81%] 1217s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_mimetypes PASSED [ 81%] 1217s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_translate PASSED [ 81%] 1217s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_markup PASSED [ 81%] 1217s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_nonascii PASSED [ 81%] 1217s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_roundtrip PASSED [ 81%] 1217s tests/translate/storage/test_resx.py::TestRESXUnit::test_isfuzzy PASSED [ 81%] 1217s tests/translate/storage/test_resx.py::TestRESXUnit::test_create PASSED [ 81%] 1217s tests/translate/storage/test_resx.py::TestRESXUnit::test_eq PASSED [ 81%] 1217s tests/translate/storage/test_resx.py::TestRESXUnit::test_escapes PASSED [ 81%] 1217s tests/translate/storage/test_resx.py::TestRESXUnit::test_difficult_escapes PASSED [ 81%] 1217s tests/translate/storage/test_resx.py::TestRESXUnit::test_note_sanity PASSED [ 81%] 1217s tests/translate/storage/test_resx.py::TestRESXUnit::test_target PASSED [ 81%] 1217s tests/translate/storage/test_resx.py::TestRESXUnit::test_rich_get PASSED [ 81%] 1217s tests/translate/storage/test_resx.py::TestRESXUnit::test_rich_set PASSED [ 81%] 1217s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_isfuzzy PASSED [ 81%] 1217s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_create PASSED [ 81%] 1217s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_eq PASSED [ 82%] 1217s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_escapes PASSED [ 82%] 1217s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_difficult_escapes PASSED [ 82%] 1217s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_note_sanity PASSED [ 82%] 1217s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_target PASSED [ 82%] 1217s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_rich_get PASSED [ 82%] 1217s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_rich_set PASSED [ 82%] 1217s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_newunit PASSED [ 82%] 1217s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_newunit_comment PASSED [ 82%] 1217s tests/translate/storage/test_resx.py::TestRESXfile::test_create_blank PASSED [ 82%] 1217s tests/translate/storage/test_resx.py::TestRESXfile::test_add PASSED [ 82%] 1217s tests/translate/storage/test_resx.py::TestRESXfile::test_remove PASSED [ 82%] 1217s tests/translate/storage/test_resx.py::TestRESXfile::test_find PASSED [ 82%] 1217s tests/translate/storage/test_resx.py::TestRESXfile::test_parse PASSED [ 82%] 1217s tests/translate/storage/test_resx.py::TestRESXfile::test_files PASSED [ 82%] 1217s tests/translate/storage/test_resx.py::TestRESXfile::test_save PASSED [ 82%] 1217s tests/translate/storage/test_resx.py::TestRESXfile::test_extensions PASSED [ 82%] 1217s tests/translate/storage/test_resx.py::TestRESXfile::test_mimetypes PASSED [ 82%] 1217s tests/translate/storage/test_resx.py::TestRESXfile::test_translate PASSED [ 82%] 1217s tests/translate/storage/test_resx.py::TestRESXfile::test_markup PASSED [ 82%] 1217s tests/translate/storage/test_resx.py::TestRESXfile::test_nonascii PASSED [ 82%] 1217s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_isfuzzy PASSED [ 82%] 1217s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_create PASSED [ 82%] 1217s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_eq PASSED [ 82%] 1217s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_escapes PASSED [ 82%] 1217s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_difficult_escapes PASSED [ 82%] 1217s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_note_sanity PASSED [ 82%] 1217s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_target PASSED [ 82%] 1217s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_rich_get PASSED [ 82%] 1217s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_rich_set PASSED [ 82%] 1217s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_source PASSED [ 82%] 1217s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_eq_formatvaluetype PASSED [ 82%] 1217s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_innerkey PASSED [ 82%] 1217s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_create_blank PASSED [ 82%] 1217s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_add PASSED [ 83%] 1217s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_remove PASSED [ 83%] 1217s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_find PASSED [ 83%] 1217s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_parse PASSED [ 83%] 1217s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_files PASSED [ 83%] 1217s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_save PASSED [ 83%] 1217s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_extensions PASSED [ 83%] 1217s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_mimetypes PASSED [ 83%] 1217s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_translate PASSED [ 83%] 1217s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_markup PASSED [ 83%] 1217s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_nonascii PASSED [ 83%] 1217s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_serialize PASSED [ 83%] 1217s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_default_handlings PASSED [ 83%] 1217s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_filename PASSED [ 83%] 1217s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_base_filename PASSED [ 83%] 1217s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_filename_default_language PASSED [ 83%] 1217s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_plural_zero_always_set PASSED [ 83%] 1217s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_add_unit PASSED [ 83%] 1217s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_isfuzzy PASSED [ 83%] 1217s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_create PASSED [ 83%] 1217s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_eq PASSED [ 83%] 1217s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_escapes PASSED [ 83%] 1217s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_difficult_escapes PASSED [ 83%] 1217s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_target PASSED [ 83%] 1217s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_rich_get PASSED [ 83%] 1217s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_rich_set PASSED [ 83%] 1217s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_note_sanity XFAIL [ 83%] 1217s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_create_blank PASSED [ 83%] 1217s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_add PASSED [ 83%] 1217s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_remove PASSED [ 83%] 1217s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_find PASSED [ 83%] 1217s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_parse PASSED [ 83%] 1217s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_files PASSED [ 83%] 1217s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_save PASSED [ 84%] 1217s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_extensions PASSED [ 84%] 1217s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_mimetypes PASSED [ 84%] 1217s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_translate PASSED [ 84%] 1217s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_markup PASSED [ 84%] 1217s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_nonascii PASSED [ 84%] 1217s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_create_blank PASSED [ 84%] 1217s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_add PASSED [ 84%] 1217s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_remove PASSED [ 84%] 1217s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_find PASSED [ 84%] 1217s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_parse PASSED [ 84%] 1217s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_files PASSED [ 84%] 1217s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_save PASSED [ 84%] 1217s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_extensions PASSED [ 84%] 1217s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_mimetypes PASSED [ 84%] 1217s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_translate PASSED [ 84%] 1217s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_markup PASSED [ 84%] 1217s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_nonascii PASSED [ 84%] 1217s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_create_blank PASSED [ 84%] 1217s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_add PASSED [ 84%] 1217s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_remove PASSED [ 84%] 1217s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_find PASSED [ 84%] 1217s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_parse PASSED [ 84%] 1217s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_files PASSED [ 84%] 1217s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_save PASSED [ 84%] 1217s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_extensions PASSED [ 84%] 1217s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_mimetypes PASSED [ 84%] 1217s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_translate PASSED [ 84%] 1217s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_markup PASSED [ 84%] 1217s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_nonascii PASSED [ 84%] 1217s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_create_blank PASSED [ 84%] 1217s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_add PASSED [ 84%] 1217s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_remove PASSED [ 84%] 1217s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_find PASSED [ 85%] 1217s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_parse PASSED [ 85%] 1217s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_files PASSED [ 85%] 1217s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_save PASSED [ 85%] 1217s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_extensions PASSED [ 85%] 1217s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_mimetypes PASSED [ 85%] 1217s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_translate PASSED [ 85%] 1217s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_markup PASSED [ 85%] 1217s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_nonascii PASSED [ 85%] 1217s tests/translate/storage/test_tbx.py::TestTBXUnit::test_isfuzzy PASSED [ 85%] 1217s tests/translate/storage/test_tbx.py::TestTBXUnit::test_create PASSED [ 85%] 1217s tests/translate/storage/test_tbx.py::TestTBXUnit::test_eq PASSED [ 85%] 1217s tests/translate/storage/test_tbx.py::TestTBXUnit::test_target PASSED [ 85%] 1217s tests/translate/storage/test_tbx.py::TestTBXUnit::test_escapes PASSED [ 85%] 1217s tests/translate/storage/test_tbx.py::TestTBXUnit::test_difficult_escapes PASSED [ 85%] 1217s tests/translate/storage/test_tbx.py::TestTBXUnit::test_note_sanity PASSED [ 85%] 1217s tests/translate/storage/test_tbx.py::TestTBXUnit::test_rich_get PASSED [ 85%] 1217s tests/translate/storage/test_tbx.py::TestTBXUnit::test_rich_set PASSED [ 85%] 1217s tests/translate/storage/test_tbx.py::TestTBXfile::test_create_blank PASSED [ 85%] 1217s tests/translate/storage/test_tbx.py::TestTBXfile::test_add PASSED [ 85%] 1217s tests/translate/storage/test_tbx.py::TestTBXfile::test_remove PASSED [ 85%] 1217s tests/translate/storage/test_tbx.py::TestTBXfile::test_find PASSED [ 85%] 1217s tests/translate/storage/test_tbx.py::TestTBXfile::test_translate PASSED [ 85%] 1217s tests/translate/storage/test_tbx.py::TestTBXfile::test_parse PASSED [ 85%] 1217s tests/translate/storage/test_tbx.py::TestTBXfile::test_files PASSED [ 85%] 1217s tests/translate/storage/test_tbx.py::TestTBXfile::test_save PASSED [ 85%] 1217s tests/translate/storage/test_tbx.py::TestTBXfile::test_markup PASSED [ 85%] 1217s tests/translate/storage/test_tbx.py::TestTBXfile::test_nonascii PASSED [ 85%] 1217s tests/translate/storage/test_tbx.py::TestTBXfile::test_extensions PASSED [ 85%] 1217s tests/translate/storage/test_tbx.py::TestTBXfile::test_mimetypes PASSED [ 85%] 1217s tests/translate/storage/test_tbx.py::TestTBXfile::test_basic PASSED [ 85%] 1217s tests/translate/storage/test_tbx.py::TestTBXfile::test_source PASSED [ 85%] 1217s tests/translate/storage/test_tbx.py::TestTBXfile::test_target PASSED [ 85%] 1217s tests/translate/storage/test_tbx.py::TestTBXfile::test_setid PASSED [ 85%] 1217s tests/translate/storage/test_tbx.py::TestTBXfile::test_indent PASSED [ 86%] 1217s tests/translate/storage/test_tbx.py::TestTBXfile::test_descrip PASSED [ 86%] 1217s tests/translate/storage/test_tbx.py::TestTBXfile::test_note_from PASSED [ 86%] 1217s tests/translate/storage/test_tiki.py::TestTikiUnit::test_locations PASSED [ 86%] 1217s tests/translate/storage/test_tiki.py::TestTikiUnit::test_to_unicode PASSED [ 86%] 1217s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_simple PASSED [ 86%] 1217s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_encode PASSED [ 86%] 1217s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_locations PASSED [ 86%] 1217s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_ignore_extras PASSED [ 86%] 1217s tests/translate/storage/test_tmx.py::TestTMXUnit::test_isfuzzy PASSED [ 86%] 1217s tests/translate/storage/test_tmx.py::TestTMXUnit::test_create PASSED [ 86%] 1217s tests/translate/storage/test_tmx.py::TestTMXUnit::test_eq PASSED [ 86%] 1217s tests/translate/storage/test_tmx.py::TestTMXUnit::test_target PASSED [ 86%] 1217s tests/translate/storage/test_tmx.py::TestTMXUnit::test_escapes PASSED [ 86%] 1217s tests/translate/storage/test_tmx.py::TestTMXUnit::test_difficult_escapes PASSED [ 86%] 1217s tests/translate/storage/test_tmx.py::TestTMXUnit::test_note_sanity PASSED [ 86%] 1217s tests/translate/storage/test_tmx.py::TestTMXUnit::test_rich_get PASSED [ 86%] 1217s tests/translate/storage/test_tmx.py::TestTMXUnit::test_rich_set PASSED [ 86%] 1217s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_isfuzzy PASSED [ 86%] 1217s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_create PASSED [ 86%] 1217s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_eq PASSED [ 86%] 1217s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_target PASSED [ 86%] 1217s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_escapes PASSED [ 86%] 1217s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_difficult_escapes PASSED [ 86%] 1217s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_note_sanity PASSED [ 86%] 1217s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_rich_get PASSED [ 86%] 1217s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_rich_set PASSED [ 86%] 1217s tests/translate/storage/test_tmx.py::TestTMXfile::test_create_blank PASSED [ 86%] 1217s tests/translate/storage/test_tmx.py::TestTMXfile::test_add PASSED [ 86%] 1217s tests/translate/storage/test_tmx.py::TestTMXfile::test_remove PASSED [ 86%] 1217s tests/translate/storage/test_tmx.py::TestTMXfile::test_find PASSED [ 86%] 1217s tests/translate/storage/test_tmx.py::TestTMXfile::test_parse PASSED [ 86%] 1217s tests/translate/storage/test_tmx.py::TestTMXfile::test_files PASSED [ 86%] 1217s tests/translate/storage/test_tmx.py::TestTMXfile::test_save PASSED [ 87%] 1217s tests/translate/storage/test_tmx.py::TestTMXfile::test_markup PASSED [ 87%] 1217s tests/translate/storage/test_tmx.py::TestTMXfile::test_nonascii PASSED [ 87%] 1217s tests/translate/storage/test_tmx.py::TestTMXfile::test_extensions PASSED [ 87%] 1217s tests/translate/storage/test_tmx.py::TestTMXfile::test_mimetypes PASSED [ 87%] 1217s tests/translate/storage/test_tmx.py::TestTMXfile::test_translate PASSED [ 87%] 1217s tests/translate/storage/test_tmx.py::TestTMXfile::test_addtranslation PASSED [ 87%] 1217s tests/translate/storage/test_tmx.py::TestTMXfile::test_withcomment PASSED [ 87%] 1217s tests/translate/storage/test_tmx.py::TestTMXfile::test_withnewlines PASSED [ 87%] 1217s tests/translate/storage/test_tmx.py::TestTMXfile::test_xmlentities PASSED [ 87%] 1217s tests/translate/storage/test_tmx.py::TestTMXfile::test_controls_cleaning PASSED [ 87%] 1217s tests/translate/storage/test_trados.py::test_unescape PASSED [ 87%] 1217s tests/translate/storage/test_trados.py::test_escape PASSED [ 87%] 1217s tests/translate/storage/test_ts.py::TestTS::test_construct PASSED [ 87%] 1217s tests/translate/storage/test_ts2.py::TestTSUnit::test_isfuzzy PASSED [ 87%] 1217s tests/translate/storage/test_ts2.py::TestTSUnit::test_create PASSED [ 87%] 1217s tests/translate/storage/test_ts2.py::TestTSUnit::test_eq PASSED [ 87%] 1217s tests/translate/storage/test_ts2.py::TestTSUnit::test_target PASSED [ 87%] 1217s tests/translate/storage/test_ts2.py::TestTSUnit::test_escapes PASSED [ 87%] 1217s tests/translate/storage/test_ts2.py::TestTSUnit::test_difficult_escapes PASSED [ 87%] 1217s tests/translate/storage/test_ts2.py::TestTSUnit::test_note_sanity PASSED [ 87%] 1217s tests/translate/storage/test_ts2.py::TestTSUnit::test_rich_get PASSED [ 87%] 1217s tests/translate/storage/test_ts2.py::TestTSUnit::test_rich_set PASSED [ 87%] 1217s tests/translate/storage/test_ts2.py::TestTSfile::test_create_blank PASSED [ 87%] 1217s tests/translate/storage/test_ts2.py::TestTSfile::test_add PASSED [ 87%] 1217s tests/translate/storage/test_ts2.py::TestTSfile::test_remove PASSED [ 87%] 1217s tests/translate/storage/test_ts2.py::TestTSfile::test_find PASSED [ 87%] 1217s tests/translate/storage/test_ts2.py::TestTSfile::test_translate PASSED [ 87%] 1217s tests/translate/storage/test_ts2.py::TestTSfile::test_parse PASSED [ 87%] 1217s tests/translate/storage/test_ts2.py::TestTSfile::test_files PASSED [ 87%] 1217s tests/translate/storage/test_ts2.py::TestTSfile::test_save PASSED [ 87%] 1217s tests/translate/storage/test_ts2.py::TestTSfile::test_markup PASSED [ 87%] 1217s tests/translate/storage/test_ts2.py::TestTSfile::test_nonascii PASSED [ 87%] 1217s tests/translate/storage/test_ts2.py::TestTSfile::test_extensions PASSED [ 87%] 1217s tests/translate/storage/test_ts2.py::TestTSfile::test_mimetypes PASSED [ 88%] 1217s tests/translate/storage/test_ts2.py::TestTSfile::test_basic PASSED [ 88%] 1217s tests/translate/storage/test_ts2.py::TestTSfile::test_source PASSED [ 88%] 1217s tests/translate/storage/test_ts2.py::TestTSfile::test_target PASSED [ 88%] 1217s tests/translate/storage/test_ts2.py::TestTSfile::test_plurals PASSED [ 88%] 1217s tests/translate/storage/test_ts2.py::TestTSfile::test_nplural PASSED [ 88%] 1217s tests/translate/storage/test_ts2.py::TestTSfile::test_language PASSED [ 88%] 1217s tests/translate/storage/test_ts2.py::TestTSfile::test_edit PASSED [ 88%] 1217s tests/translate/storage/test_ts2.py::TestTSfile::test_obsolete PASSED [ 88%] 1217s tests/translate/storage/test_ts2.py::TestTSfile::test_locations PASSED [ 88%] 1217s tests/translate/storage/test_ts2.py::TestTSfile::test_merge_with_fuzzies PASSED [ 88%] 1217s tests/translate/storage/test_ts2.py::TestTSfile::test_getid PASSED [ 88%] 1217s tests/translate/storage/test_ts2.py::TestTSfile::test_backnforth PASSED [ 88%] 1217s tests/translate/storage/test_ts2.py::TestTSfile::test_context PASSED [ 88%] 1217s tests/translate/storage/test_ts2.py::TestTSfile::test_roundtrip_context PASSED [ 88%] 1217s tests/translate/storage/test_ts2.py::TestTSfile::test_edit_missing_translation PASSED [ 88%] 1217s tests/translate/storage/test_ts2.py::TestTSfile::test_missing_source PASSED [ 88%] 1217s tests/translate/storage/test_txt.py::TestTxtUnit::test_isfuzzy PASSED [ 88%] 1217s tests/translate/storage/test_txt.py::TestTxtUnit::test_create PASSED [ 88%] 1217s tests/translate/storage/test_txt.py::TestTxtUnit::test_eq PASSED [ 88%] 1217s tests/translate/storage/test_txt.py::TestTxtUnit::test_escapes PASSED [ 88%] 1217s tests/translate/storage/test_txt.py::TestTxtUnit::test_difficult_escapes PASSED [ 88%] 1217s tests/translate/storage/test_txt.py::TestTxtUnit::test_note_sanity PASSED [ 88%] 1217s tests/translate/storage/test_txt.py::TestTxtUnit::test_target PASSED [ 88%] 1217s tests/translate/storage/test_txt.py::TestTxtUnit::test_rich_get PASSED [ 88%] 1217s tests/translate/storage/test_txt.py::TestTxtUnit::test_rich_set PASSED [ 88%] 1217s tests/translate/storage/test_txt.py::TestTxtFile::test_create_blank PASSED [ 88%] 1217s tests/translate/storage/test_txt.py::TestTxtFile::test_add PASSED [ 88%] 1217s tests/translate/storage/test_txt.py::TestTxtFile::test_remove PASSED [ 88%] 1217s tests/translate/storage/test_txt.py::TestTxtFile::test_find PASSED [ 88%] 1217s tests/translate/storage/test_txt.py::TestTxtFile::test_parse PASSED [ 88%] 1217s tests/translate/storage/test_txt.py::TestTxtFile::test_files PASSED [ 88%] 1217s tests/translate/storage/test_txt.py::TestTxtFile::test_save PASSED [ 88%] 1217s tests/translate/storage/test_txt.py::TestTxtFile::test_extensions PASSED [ 89%] 1217s tests/translate/storage/test_txt.py::TestTxtFile::test_mimetypes PASSED [ 89%] 1217s tests/translate/storage/test_txt.py::TestTxtFile::test_translate PASSED [ 89%] 1217s tests/translate/storage/test_txt.py::TestTxtFile::test_markup PASSED [ 89%] 1217s tests/translate/storage/test_txt.py::TestTxtFile::test_nonascii PASSED [ 89%] 1217s tests/translate/storage/test_txt.py::TestTxtFile::test_simpleblock PASSED [ 89%] 1217s tests/translate/storage/test_txt.py::TestTxtFile::test_multipleblocks PASSED [ 89%] 1217s tests/translate/storage/test_txt.py::TestTxtFile::test_no_segmentation PASSED [ 89%] 1217s tests/translate/storage/test_utx.py::TestUtxUnit::test_isfuzzy PASSED [ 89%] 1217s tests/translate/storage/test_utx.py::TestUtxUnit::test_create PASSED [ 89%] 1217s tests/translate/storage/test_utx.py::TestUtxUnit::test_eq PASSED [ 89%] 1217s tests/translate/storage/test_utx.py::TestUtxUnit::test_target PASSED [ 89%] 1217s tests/translate/storage/test_utx.py::TestUtxUnit::test_escapes PASSED [ 89%] 1217s tests/translate/storage/test_utx.py::TestUtxUnit::test_difficult_escapes PASSED [ 89%] 1217s tests/translate/storage/test_utx.py::TestUtxUnit::test_note_sanity PASSED [ 89%] 1217s tests/translate/storage/test_utx.py::TestUtxUnit::test_rich_get PASSED [ 89%] 1217s tests/translate/storage/test_utx.py::TestUtxUnit::test_rich_set PASSED [ 89%] 1217s tests/translate/storage/test_utx.py::TestUtxFile::test_create_blank PASSED [ 89%] 1217s tests/translate/storage/test_utx.py::TestUtxFile::test_add PASSED [ 89%] 1217s tests/translate/storage/test_utx.py::TestUtxFile::test_remove PASSED [ 89%] 1217s tests/translate/storage/test_utx.py::TestUtxFile::test_find PASSED [ 89%] 1217s tests/translate/storage/test_utx.py::TestUtxFile::test_translate PASSED [ 89%] 1217s tests/translate/storage/test_utx.py::TestUtxFile::test_parse PASSED [ 89%] 1217s tests/translate/storage/test_utx.py::TestUtxFile::test_files PASSED [ 89%] 1217s tests/translate/storage/test_utx.py::TestUtxFile::test_save PASSED [ 89%] 1217s tests/translate/storage/test_utx.py::TestUtxFile::test_markup PASSED [ 89%] 1217s tests/translate/storage/test_utx.py::TestUtxFile::test_nonascii PASSED [ 89%] 1217s tests/translate/storage/test_utx.py::TestUtxFile::test_extensions PASSED [ 89%] 1217s tests/translate/storage/test_utx.py::TestUtxFile::test_mimetypes PASSED [ 89%] 1217s tests/translate/storage/test_wordfast.py::TestWFTime::test_timestring PASSED [ 89%] 1217s tests/translate/storage/test_wordfast.py::TestWFTime::test_time PASSED [ 89%] 1217s tests/translate/storage/test_wordfast.py::TestWFUnit::test_isfuzzy PASSED [ 89%] 1217s tests/translate/storage/test_wordfast.py::TestWFUnit::test_create PASSED [ 89%] 1217s tests/translate/storage/test_wordfast.py::TestWFUnit::test_eq PASSED [ 90%] 1217s tests/translate/storage/test_wordfast.py::TestWFUnit::test_target PASSED [ 90%] 1217s tests/translate/storage/test_wordfast.py::TestWFUnit::test_escapes PASSED [ 90%] 1217s tests/translate/storage/test_wordfast.py::TestWFUnit::test_note_sanity PASSED [ 90%] 1217s tests/translate/storage/test_wordfast.py::TestWFUnit::test_rich_get PASSED [ 90%] 1217s tests/translate/storage/test_wordfast.py::TestWFUnit::test_rich_set PASSED [ 90%] 1217s tests/translate/storage/test_wordfast.py::TestWFUnit::test_difficult_escapes PASSED [ 90%] 1217s tests/translate/storage/test_wordfast.py::TestWFUnit::test_wordfast_escaping PASSED [ 90%] 1217s tests/translate/storage/test_wordfast.py::TestWFUnit::test_newlines PASSED [ 90%] 1217s tests/translate/storage/test_wordfast.py::TestWFUnit::test_language_setting PASSED [ 90%] 1217s tests/translate/storage/test_wordfast.py::TestWFUnit::test_istranslated PASSED [ 90%] 1217s tests/translate/storage/test_wordfast.py::TestWFFile::test_create_blank PASSED [ 90%] 1217s tests/translate/storage/test_wordfast.py::TestWFFile::test_add PASSED [ 90%] 1217s tests/translate/storage/test_wordfast.py::TestWFFile::test_remove PASSED [ 90%] 1217s tests/translate/storage/test_wordfast.py::TestWFFile::test_find PASSED [ 90%] 1217s tests/translate/storage/test_wordfast.py::TestWFFile::test_translate PASSED [ 90%] 1217s tests/translate/storage/test_wordfast.py::TestWFFile::test_parse PASSED [ 90%] 1217s tests/translate/storage/test_wordfast.py::TestWFFile::test_files PASSED [ 90%] 1217s tests/translate/storage/test_wordfast.py::TestWFFile::test_save PASSED [ 90%] 1217s tests/translate/storage/test_wordfast.py::TestWFFile::test_markup PASSED [ 90%] 1217s tests/translate/storage/test_wordfast.py::TestWFFile::test_nonascii PASSED [ 90%] 1217s tests/translate/storage/test_wordfast.py::TestWFFile::test_extensions PASSED [ 90%] 1217s tests/translate/storage/test_wordfast.py::TestWFFile::test_mimetypes PASSED [ 90%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_isfuzzy PASSED [ 90%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_create PASSED [ 90%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_eq PASSED [ 90%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_target PASSED [ 90%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_escapes PASSED [ 90%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_difficult_escapes PASSED [ 90%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_note_sanity PASSED [ 90%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_rich_get PASSED [ 90%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_rich_set PASSED [ 90%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_markreview PASSED [ 90%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_errors PASSED [ 90%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_accepted_control_chars PASSED [ 91%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_unaccepted_control_chars PASSED [ 91%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_create_blank PASSED [ 91%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_add PASSED [ 91%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_remove PASSED [ 91%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_find PASSED [ 91%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_translate PASSED [ 91%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_parse PASSED [ 91%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_files PASSED [ 91%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_save PASSED [ 91%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_markup PASSED [ 91%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_nonascii PASSED [ 91%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_extensions PASSED [ 91%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_mimetypes PASSED [ 91%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_basic PASSED [ 91%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_namespace PASSED [ 91%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_rich_source PASSED [ 91%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_rich_target PASSED [ 91%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_source PASSED [ 91%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_target PASSED [ 91%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_sourcelanguage PASSED [ 91%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_targetlanguage PASSED [ 91%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_targetlanguage_multi PASSED [ 91%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_notes PASSED [ 91%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_alttrans PASSED [ 91%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_fuzzy PASSED [ 91%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_xml_space PASSED [ 91%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_parsing PASSED [ 91%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_entities PASSED [ 91%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_multiple_filenodes PASSED [ 91%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_indent PASSED [ 91%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_add_target PASSED [ 91%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_preserve PASSED [ 91%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_closing_tags PASSED [ 92%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_context_groups PASSED [ 92%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_getlocations PASSED [ 92%] 1217s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_addlocation PASSED [ 92%] 1218s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_huge PASSED [ 92%] 1218s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_preserve_add PASSED [ 92%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_isfuzzy PASSED [ 92%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_create PASSED [ 92%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_eq PASSED [ 92%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_escapes PASSED [ 92%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_difficult_escapes PASSED [ 92%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_note_sanity PASSED [ 92%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_target PASSED [ 92%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_rich_get PASSED [ 92%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_rich_set PASSED [ 92%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_getlocations PASSED [ 92%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_create_blank PASSED [ 92%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_add PASSED [ 92%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_find PASSED [ 92%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_parse PASSED [ 92%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_files PASSED [ 92%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_save PASSED [ 92%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_extensions PASSED [ 92%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_mimetypes PASSED [ 92%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_translate PASSED [ 92%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_markup PASSED [ 92%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_nonascii PASSED [ 92%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_serialize PASSED [ 92%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_empty PASSED [ 92%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_edit PASSED [ 92%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_edit_unicode PASSED [ 92%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_parse_unicode_list PASSED [ 92%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_ordering PASSED [ 92%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_initial_comments PASSED [ 92%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_string_key PASSED [ 93%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_nested PASSED [ 93%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_multiline PASSED [ 93%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_boolean PASSED [ 93%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_integer PASSED [ 93%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_no_quote_strings PASSED [ 93%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_double_quote_strings PASSED [ 93%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_single_quote_strings PASSED [ 93%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_avoid_escaping_double_quote_strings PASSED [ 93%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_avoid_escaping_single_quote_strings PASSED [ 93%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_escaped_double_quotes PASSED [ 93%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_newlines PASSED [ 93%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_abbreviated_list PASSED [ 93%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_abbreviated_dictionary PASSED [ 93%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_key_nesting PASSED [ 93%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_add_to_mepty PASSED [ 93%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_empty_key PASSED [ 93%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_dict_in_list PASSED [ 93%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_dump_args PASSED [ 93%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_anchors PASSED [ 93%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_tagged_scalar PASSED [ 93%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_numeric PASSED [ 93%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_remove PASSED [ 93%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_special PASSED [ 93%] 1218s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_quotes_roundtrip PASSED [ 93%] 1218s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_create_blank PASSED [ 93%] 1218s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_remove PASSED [ 93%] 1218s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_find PASSED [ 93%] 1218s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_parse PASSED [ 93%] 1218s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_files PASSED [ 93%] 1218s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_save PASSED [ 93%] 1218s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_extensions PASSED [ 93%] 1218s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_mimetypes PASSED [ 93%] 1218s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_translate PASSED [ 94%] 1218s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_markup PASSED [ 94%] 1218s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_nonascii PASSED [ 94%] 1218s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_list PASSED [ 94%] 1218s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby PASSED [ 94%] 1218s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_wrong PASSED [ 94%] 1218s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_invalid_value PASSED [ 94%] 1218s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_plural PASSED [ 94%] 1218s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_empty PASSED [ 94%] 1218s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_anchors PASSED [ 94%] 1218s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_type_change PASSED [ 94%] 1218s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_add PASSED [ 94%] 1218s tests/translate/storage/test_zip.py::TestZIPFile::test_created PASSED [ 94%] 1218s tests/translate/storage/test_zip.py::TestZIPFile::test_basic PASSED [ 94%] 1218s tests/translate/storage/test_zip.py::TestZIPFile::test_structure PASSED [ 94%] 1218s tests/translate/storage/test_zip.py::TestZIPFile::test_getunits PASSED [ 94%] 1218s tests/translate/storage/xml_extract/test_misc.py::test_reduce_tree PASSED [ 94%] 1218s tests/translate/storage/xml_extract/test_misc.py::test_compose_mappings PASSED [ 94%] 1218s tests/translate/storage/xml_extract/test_misc.py::test_parse_tag PASSED [ 94%] 1218s tests/translate/storage/xml_extract/test_unit_tree.py::test__split_xpath_component PASSED [ 94%] 1218s tests/translate/storage/xml_extract/test_unit_tree.py::test__split_xpath PASSED [ 94%] 1218s tests/translate/storage/xml_extract/test_unit_tree.py::test__add_unit_to_tree PASSED [ 94%] 1218s tests/translate/storage/xml_extract/test_xpath_breadcrumb.py::test_breadcrumb PASSED [ 94%] 1218s tests/translate/tools/test_help.py::test_help[build_tmdb] SKIPPED (S...) [ 94%] 1218s tests/translate/tools/test_help.py::test_help[phppo2pypo] SKIPPED (S...) [ 94%] 1218s tests/translate/tools/test_help.py::test_help[poclean] SKIPPED (Skip...) [ 94%] 1218s tests/translate/tools/test_help.py::test_help[pocompile] SKIPPED (Sk...) [ 94%] 1218s tests/translate/tools/test_help.py::test_help[poconflicts] SKIPPED (...) [ 94%] 1218s tests/translate/tools/test_help.py::test_help[pocount] SKIPPED (Skip...) [ 94%] 1218s tests/translate/tools/test_help.py::test_help[podebug] SKIPPED (Skip...) [ 94%] 1218s tests/translate/tools/test_help.py::test_help[pogrep] SKIPPED (Skip ...) [ 94%] 1218s tests/translate/tools/test_help.py::test_help[pomerge] SKIPPED (Skip...) [ 94%] 1218s tests/translate/tools/test_help.py::test_help[porestructure] SKIPPED [ 94%] 1218s tests/translate/tools/test_help.py::test_help[posegment] SKIPPED (Sk...) [ 95%] 1218s tests/translate/tools/test_help.py::test_help[poswap] SKIPPED (Skip ...) [ 95%] 1218s tests/translate/tools/test_help.py::test_help[poterminology] SKIPPED [ 95%] 1218s tests/translate/tools/test_help.py::test_help[pretranslate] SKIPPED [ 95%] 1218s tests/translate/tools/test_help.py::test_help[pydiff] SKIPPED (Skip ...) [ 95%] 1218s tests/translate/tools/test_help.py::test_help[pypo2phppo] SKIPPED (S...) [ 95%] 1218s tests/translate/tools/test_junitmsgfmt.py::test_output[failure] PASSED [ 95%] 1218s tests/translate/tools/test_junitmsgfmt.py::test_output[untranslated] PASSED [ 95%] 1218s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPo::test_single_po PASSED [ 95%] 1218s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPo::test_plural_po PASSED [ 95%] 1218s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_single_po PASSED [ 95%] 1218s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_plural_po PASSED [ 95%] 1218s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_help PASSED [ 95%] 1218s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_zero PASSED [ 95%] 1218s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_one PASSED [ 95%] 1218s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_two PASSED [ 95%] 1218s tests/translate/tools/test_pocount.py::TestCount::test_punctuation_divides_words PASSED [ 95%] 1218s tests/translate/tools/test_pocount.py::TestCount::test_xml_tags PASSED [ 95%] 1218s tests/translate/tools/test_pocount.py::TestCount::test_newlines PASSED [ 95%] 1218s tests/translate/tools/test_pocount.py::TestCount::test_variables_are_words PASSED [ 95%] 1218s tests/translate/tools/test_pocount.py::TestCount::test_plurals PASSED [ 95%] 1218s tests/translate/tools/test_pocount.py::TestCount::test_plurals_kde XFAIL [ 95%] 1218s tests/translate/tools/test_pocount.py::TestCount::test_msgid_blank PASSED [ 95%] 1218s tests/translate/tools/test_pocount.py::TestPOCount::test_translated PASSED [ 95%] 1218s tests/translate/tools/test_pocount.py::TestPOCount::test_fuzzy PASSED [ 95%] 1218s tests/translate/tools/test_pocount.py::TestPOCount::test_untranslated PASSED [ 95%] 1218s tests/translate/tools/test_pocount.py::TestPOCount::test_total PASSED [ 95%] 1218s tests/translate/tools/test_pocount.py::TestPOCount::test_translatedsourcewords PASSED [ 95%] 1218s tests/translate/tools/test_pocount.py::TestPOCount::test_fuzzysourcewords PASSED [ 95%] 1218s tests/translate/tools/test_pocount.py::TestPOCount::test_untranslatedsourcewords PASSED [ 95%] 1218s tests/translate/tools/test_pocount.py::TestPOCount::test_totalsourcewords PASSED [ 95%] 1218s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-csv] PASSED [ 95%] 1218s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-full] PASSED [ 95%] 1218s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-short-strings] PASSED [ 95%] 1218s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-short-words] PASSED [ 96%] 1218s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-csv] PASSED [ 96%] 1218s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-full] PASSED [ 96%] 1218s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-short-strings] PASSED [ 96%] 1218s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-short-words] PASSED [ 96%] 1218s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-csv] PASSED [ 96%] 1218s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-full] PASSED [ 96%] 1218s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-short-strings] PASSED [ 96%] 1218s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-short-words] PASSED [ 96%] 1218s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-csv] PASSED [ 96%] 1218s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-full] PASSED [ 96%] 1218s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-short-strings] PASSED [ 96%] 1218s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-short-words] PASSED [ 96%] 1218s tests/translate/tools/test_pocount.py::test_cases[po-file] PASSED [ 96%] 1218s tests/translate/tools/test_pocount.py::test_cases[po-file-fuzzy] PASSED [ 96%] 1218s tests/translate/tools/test_pocount.py::test_cases[po-file-csv] PASSED [ 96%] 1218s tests/translate/tools/test_pocount.py::test_cases[xliff-states-yes] PASSED [ 96%] 1218s tests/translate/tools/test_pocount.py::test_cases[xliff-states-no] PASSED [ 96%] 1218s tests/translate/tools/test_pocount.py::test_error_cases[mutually-exclusive] PASSED [ 96%] 1218s tests/translate/tools/test_pocount.py::test_error_cases[missing-file] PASSED [ 96%] 1219s tests/translate/tools/test_pocount.py::test_error_cases[no-args] PASSED [ 96%] 1219s tests/translate/tools/test_podebug.py::TestPODebug::test_ignore_gtk PASSED [ 96%] 1219s tests/translate/tools/test_podebug.py::TestPODebug::test_keep_target PASSED [ 96%] 1219s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_blank PASSED [ 96%] 1219s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_en PASSED [ 96%] 1219s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_xxx PASSED [ 96%] 1219s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_bracket PASSED [ 96%] 1219s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode PASSED [ 96%] 1219s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_at_placeholders PASSED [ 96%] 1219s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_single_brace_placeholders PASSED [ 96%] 1219s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_double_brace_placeholders PASSED [ 96%] 1219s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_html PASSED [ 96%] 1219s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_multiple_styles_of_placeholder PASSED [ 96%] 1219s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped PASSED [ 97%] 1219s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_at_placeholders PASSED [ 97%] 1219s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_single_brace_placeholders PASSED [ 97%] 1219s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_double_brace_placeholders PASSED [ 97%] 1219s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_html PASSED [ 97%] 1219s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_multiple_styles_of_placeholder PASSED [ 97%] 1219s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified PASSED [ 97%] 1219s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_at_placeholders PASSED [ 97%] 1219s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_single_brace_placeholders PASSED [ 97%] 1219s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_double_brace_placeholders PASSED [ 97%] 1219s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_html PASSED [ 97%] 1219s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_multiple_styles_of_placeholder PASSED [ 97%] 1219s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_chef PASSED [ 97%] 1219s tests/translate/tools/test_podebug.py::TestPODebug::test_po_variables PASSED [ 97%] 1219s tests/translate/tools/test_podebug.py::TestPODebug::test_xliff_rewrite PASSED [ 97%] 1219s tests/translate/tools/test_podebug.py::TestPODebug::test_hash PASSED [ 97%] 1219s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_msgid PASSED [ 97%] 1219s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_msgstr PASSED [ 97%] 1219s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_locations PASSED [ 97%] 1219s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_comments PASSED [ 97%] 1219s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_locations_with_comment_enabled PASSED [ 97%] 1219s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_message_searchstring PASSED [ 97%] 1219s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_message_regex_searchstring PASSED [ 97%] 1219s tests/translate/tools/test_pogrep.py::TestPOGrep::test_keep_translations PASSED [ 97%] 1219s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_normalise PASSED [ 97%] 1219s tests/translate/tools/test_pogrep.py::TestXLiffGrep::test_simplegrep PASSED [ 97%] 1219s tests/translate/tools/test_pomerge.py::test_str2bool PASSED [ 97%] 1219s tests/translate/tools/test_pomerge.py::TestPOMerge::test_mergesore_bad_data PASSED [ 97%] 1219s tests/translate/tools/test_pomerge.py::TestPOMerge::test_simplemerge PASSED [ 97%] 1219s tests/translate/tools/test_pomerge.py::TestPOMerge::test_simplemerge_no_locations PASSED [ 97%] 1219s tests/translate/tools/test_pomerge.py::TestPOMerge::test_replacemerge PASSED [ 97%] 1219s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_blanks PASSED [ 97%] 1219s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_fuzzies PASSED [ 97%] 1219s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_locations PASSED [ 97%] 1219s tests/translate/tools/test_pomerge.py::TestPOMerge::test_unit_missing_in_template_with_locations PASSED [ 98%] 1219s tests/translate/tools/test_pomerge.py::TestPOMerge::test_unit_missing_in_template_no_locations PASSED [ 98%] 1219s tests/translate/tools/test_pomerge.py::TestPOMerge::test_reflowed_source_comments PASSED [ 98%] 1219s tests/translate/tools/test_pomerge.py::TestPOMerge::test_comments_with_blank_lines PASSED [ 98%] 1219s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merge_dont_delete_unassociated_comments PASSED [ 98%] 1219s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_trailing_newlines PASSED [ 98%] 1219s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_minor_start_and_end_of_sentence_changes PASSED [ 98%] 1219s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_last_entry_in_a_file PASSED [ 98%] 1219s tests/translate/tools/test_pomerge.py::TestPOMerge::test_escape_tabs XFAIL [ 98%] 1219s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_comments_layout PASSED [ 98%] 1219s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merge_dos2unix PASSED [ 98%] 1219s tests/translate/tools/test_pomerge.py::TestPOMerge::test_xliff_into_xliff PASSED [ 98%] 1219s tests/translate/tools/test_pomerge.py::TestPOMerge::test_po_into_xliff PASSED [ 98%] 1219s tests/translate/tools/test_pomerge.py::TestPOMerge::test_xliff_into_po PASSED [ 98%] 1219s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_dont_merge_kde_comments_found_in_translation PASSED [ 98%] 1219s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_untranslated_with_kde_disambiguation PASSED [ 98%] 1219s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_header_entries PASSED [ 98%] 1219s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_different_locations PASSED [ 98%] 1219s tests/translate/tools/test_posegment.py::TestPOSegment::test_en_ja_simple PASSED [ 98%] 1219s tests/translate/tools/test_posegment.py::TestPOSegment::test_en_ja_punctuation PASSED [ 98%] 1219s tests/translate/tools/test_poterminology.py::TestPOTerminology::test_term_extraction PASSED [ 98%] 1219s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_pretranslatepo_blank PASSED [ 98%] 1219s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_simple PASSED [ 98%] 1219s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_messages_marked_fuzzy PASSED [ 98%] 1219s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_plurals_with_fuzzy_matching PASSED [ 98%] 1219s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgid_change XFAIL [ 98%] 1219s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_location_change PASSED [ 98%] 1219s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_location_and_whitespace_change PASSED [ 98%] 1219s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_accelerator_changes XFAIL [ 98%] 1219s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_lines_cut_differently XFAIL [ 98%] 1219s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_automatic_comments_dont_duplicate PASSED [ 98%] 1219s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_automatic_comments_new_overides_old PASSED [ 98%] 1219s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_comments_with_blank_comment_lines PASSED [ 98%] 1219s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_empty_commentlines PASSED [ 99%] 1219s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgidcomments PASSED [ 99%] 1219s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_plurals PASSED [ 99%] 1219s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_resurect_obsolete_messages PASSED [ 99%] 1219s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_comments PASSED [ 99%] 1219s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_typecomments PASSED [ 99%] 1219s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_xliff_states PASSED [ 99%] 1219s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_pretranslatepo_blank PASSED [ 99%] 1219s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_simple PASSED [ 99%] 1219s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_messages_marked_fuzzy PASSED [ 99%] 1219s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_plurals_with_fuzzy_matching PASSED [ 99%] 1219s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgid_change XFAIL [ 99%] 1219s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_location_change PASSED [ 99%] 1219s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_location_and_whitespace_change PASSED [ 99%] 1219s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_accelerator_changes XFAIL [ 99%] 1219s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_lines_cut_differently XFAIL [ 99%] 1219s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_automatic_comments_dont_duplicate PASSED [ 99%] 1219s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_automatic_comments_new_overides_old PASSED [ 99%] 1219s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_comments_with_blank_comment_lines PASSED [ 99%] 1219s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_empty_commentlines PASSED [ 99%] 1219s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgidcomments PASSED [ 99%] 1219s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_plurals PASSED [ 99%] 1219s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_resurect_obsolete_messages PASSED [ 99%] 1219s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_comments PASSED [ 99%] 1219s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_typecomments PASSED [ 99%] 1219s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_xliff_states PASSED [ 99%] 1219s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_help PASSED [ 99%] 1219s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPo::test_single_po PASSED [ 99%] 1219s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPo::test_plural_po PASSED [ 99%] 1219s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_single_po PASSED [ 99%] 1219s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_plural_po PASSED [ 99%] 1219s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_help PASSED [ 99%] 1219s tests/xliff_conformance/test_xliff_conformance.py::test_open_office_to_xliff SKIPPED [ 99%] 1219s tests/xliff_conformance/test_xliff_conformance.py::test_po_to_xliff SKIPPED [100%] 1219s 1219s =============================== warnings summary =============================== 1219s tests/translate/storage/test_cpo.py:15 1219s Warning: 1219s Module 'translate.storage.cpo' was found, but when imported by pytest it raised: 1219s ImportError('gettext PO library not found') 1219s In pytest 9.1 this warning will become an error by default. 1219s You can fix the underlying problem, or alternatively overwrite this behavior and silence this warning by passing exc_type=ImportError explicitly. 1219s See https://docs.pytest.org/en/stable/deprecations.html#pytest-importorskip-default-behavior-regarding-importerror 1219s 1219s tests/odf_xliff/test_odf_xliff.py::test_roundtrip 1219s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.5UDgDC/autopkgtest_tmp/tests/odf_xliff/test_2.odt'> 1219s Enable tracemalloc to get traceback where the object was allocated. 1219s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1219s 1219s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_convertandroid 1219s Warning: unclosed file <_io.TextIOWrapper name='TestAndroid2POCommand_test_convertandroid/en.po' mode='r' encoding='UTF-8'> 1219s Enable tracemalloc to get traceback where the object was allocated. 1219s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1219s 1219s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder 1219s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder 1219s Warning: unclosed file <_io.TextIOWrapper name='TestCSV2POCommand_test_columnorder/test.po' mode='r' encoding='UTF-8'> 1219s Enable tracemalloc to get traceback where the object was allocated. 1219s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1219s 1219s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_pot 1219s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_pot/simple.pot'> 1219s Enable tracemalloc to get traceback where the object was allocated. 1219s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1219s 1219s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_po 1219s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_po 1219s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_po/simple.po'> 1219s Enable tracemalloc to get traceback where the object was allocated. 1219s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1219s 1219s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_remove_duplicates 1219s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_remove_duplicates/simple.po'> 1219s Enable tracemalloc to get traceback where the object was allocated. 1219s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1219s 1219s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_xlf 1219s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_xlf/simple.xlf'> 1219s Enable tracemalloc to get traceback where the object was allocated. 1219s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1219s 1219s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder 1219s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder 1219s Warning: unclosed file <_io.TextIOWrapper name='TestPO2CSVCommand_test_columnorder/test.csv' mode='r' encoding='UTF-8'> 1219s Enable tracemalloc to get traceback where the object was allocated. 1219s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1219s 1219s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_context 1219s Warning: unclosed file <_io.TextIOWrapper name='TestPO2CSVCommand_test_context/test.csv' mode='r' encoding='UTF-8'> 1219s Enable tracemalloc to get traceback where the object was allocated. 1219s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1219s 1219s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_missing 1219s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_no_accesskey 1219s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_amp_no_accesskey 1219s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_missing 1219s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_no_accesskey 1219s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_amp_no_accesskey 1219s Warning: Could not find accesskey for key.accesskey 1219s 1219s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified 1219s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file 1219s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file_and_templates_overwritten 1219s Warning: unclosed file <_io.BufferedReader name='translation/file1.po'> 1219s Enable tracemalloc to get traceback where the object was allocated. 1219s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1219s 1219s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified 1219s Warning: unclosed file <_io.BufferedWriter name='translated/file1.html'> 1219s Enable tracemalloc to get traceback where the object was allocated. 1219s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1219s 1219s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_convert 1219s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.5UDgDC/autopkgtest_tmp/tests/translate/convert/test.idml'> 1219s Enable tracemalloc to get traceback where the object was allocated. 1219s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1219s 1219s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_with_single_po 1219s Warning: unclosed file <_io.BufferedReader name='translation.po'> 1219s Enable tracemalloc to get traceback where the object was allocated. 1219s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1219s 1219s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_escape 1219s Warning: unclosed file <_io.FileIO name='input.oo' mode='rb' closefd=True> 1219s Enable tracemalloc to get traceback where the object was allocated. 1219s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1219s 1219s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_escape 1219s Warning: unclosed file <_io.FileIO name='output.oo' mode='wb' closefd=True> 1219s Enable tracemalloc to get traceback where the object was allocated. 1219s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1219s 1219s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys_missing_accesskey 1219s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys_missing_accesskey 1219s Warning: Could not find accesskey for prop.accesskey 1219s 1219s tests/translate/convert/test_po2tmx.py: 26 warnings 1219s tests/translate/filters/test_pofilter.py: 13 warnings 1219s tests/translate/storage/test_tbx.py: 17 warnings 1219s tests/translate/storage/test_tmx.py: 24 warnings 1219s 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' 1219s 1219s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert 1219s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert/simple.po'> 1219s Enable tracemalloc to get traceback where the object was allocated. 1219s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1219s 1219s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf16 1219s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_utf16/simple.po'> 1219s Enable tracemalloc to get traceback where the object was allocated. 1219s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1219s 1219s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 1219s Warning: unclosed file <_io.BufferedWriter name='simple.po'> 1219s Enable tracemalloc to get traceback where the object was allocated. 1219s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1219s 1219s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 1219s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 1219s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_wrong/simple.po'> 1219s Enable tracemalloc to get traceback where the object was allocated. 1219s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1219s 1219s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf8 1219s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_utf8/simple.po'> 1219s Enable tracemalloc to get traceback where the object was allocated. 1219s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1219s 1219s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_menuex 1219s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_menuex/simple.po'> 1219s Enable tracemalloc to get traceback where the object was allocated. 1219s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1219s 1219s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_pot 1219s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_simple_pot/simple.pot'> 1219s Enable tracemalloc to get traceback where the object was allocated. 1219s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1219s 1219s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_po 1219s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_simple_po/simple.po'> 1219s Enable tracemalloc to get traceback where the object was allocated. 1219s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1219s 1219s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_remove_duplicates 1219s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_remove_duplicates/simple.po'> 1219s Enable tracemalloc to get traceback where the object was allocated. 1219s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1219s 1219s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert 1219s Warning: unclosed file <_io.BufferedWriter name='simple.odt'> 1219s Enable tracemalloc to get traceback where the object was allocated. 1219s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1219s 1219s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert 1219s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.5UDgDC/autopkgtest_tmp/tests/translate/convert/test.odt'> 1219s Enable tracemalloc to get traceback where the object was allocated. 1219s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1219s 1219s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_preserve_filename 1219s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_preserve_filename/snippet.xlf'> 1219s Enable tracemalloc to get traceback where the object was allocated. 1219s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1219s 1219s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_pot 1219s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_simple_pot/simple.pot'> 1219s Enable tracemalloc to get traceback where the object was allocated. 1219s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1219s 1219s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_po 1219s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_simple_po/simple.po'> 1219s Enable tracemalloc to get traceback where the object was allocated. 1219s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1219s 1219s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_remove_duplicates 1219s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_remove_duplicates/simple.po'> 1219s Enable tracemalloc to get traceback where the object was allocated. 1219s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1219s 1219s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting 1219s Warning: DTD parse error: :1:36:FATAL:PARSER:ERR_ENTITY_NOT_FINISHED: xmlParseEntityDecl: entity test.me not terminated 1219s 1219s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting 1219s Warning: DTD file '' does not validate 1219s 1219s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 1219s --------------------------- snapshot report summary ---------------------------- 1219s 23 snapshots passed. 1219s =========================== short test summary info ============================ 1219s SKIPPED [1] tests/translate/storage/test_cpo.py:15: could not import 'translate.storage.cpo': gettext PO library not found 1219s SKIPPED [1] tests/translate/storage/test_fluent.py:29: could not import 'translate.storage.fluent': No module named 'fluent' 1219s SKIPPED [1] tests/translate/filters/test_checks.py:1429: Spell checking for af is not available 1219s SKIPPED [1] tests/translate/storage/test_mo.py:498: Skip testing command line tools 1219s SKIPPED [16] tests/translate/tools/test_help.py:16: Skip testing command line tools 1219s SKIPPED [1] tests/xliff_conformance/test_xliff_conformance.py:49: Skip testing command line tools 1219s SKIPPED [1] tests/xliff_conformance/test_xliff_conformance.py:58: Skip testing command line tools 1219s XFAIL tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accelerator_keys_not_in_sentence - Not Implemented 1219s XFAIL tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accelerator_keys_not_in_sentence - Not Implemented 1219s XFAIL tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_propertyless_template - Need to review if we want this behaviour 1219s XFAIL tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_propertyless_template - Need to review if we want this behaviour 1219s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_change - Not implemented - review if this is even correct 1219s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_accelerator_changes - Not Implemented - needs review 1219s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_lines_cut_differently - Not Implemented - review if this is even correct 1219s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_change - Not implemented - review if this is even correct 1219s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_accelerator_changes - Not Implemented - needs review 1219s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_lines_cut_differently - Not Implemented - review if this is even correct 1219s XFAIL tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_no_duplicates - This is invalid YAML document 1219s XFAIL tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_no_duplicates - This is invalid YAML document 1219s XFAIL tests/translate/filters/test_checks.py::test_acceleratedvariables - Accelerated variables needs a better implementation 1219s XFAIL tests/translate/filters/test_checks.py::test_musttranslatewords - FIXME: All fails() tests are not working 1219s XFAIL tests/translate/filters/test_checks.py::test_persian_single_and_double_quote_fail_at_the_same_time - Bug #3408 1219s XFAIL tests/translate/filters/test_checks.py::test_bengali_mozilla_inverted_xmltags - Bug #3506 1219s 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. 1219s XFAIL tests/translate/storage/placeables/test_base.py::TestConverters::test_to_general_placeables - Test needs fixing, disabled for now 1219s XFAIL tests/translate/storage/placeables/test_base.py::TestConverters::test_to_xliff_placeables - Test needs fixing, disabled for now 1219s XFAIL tests/translate/storage/test_dtd.py::test_quotefordtd_unimplemented_cases - Not Implemented 1219s XFAIL tests/translate/storage/test_dtd.py::test_unquotefromdtd_unimplemented_cases - Not Implemented 1219s XFAIL tests/translate/storage/test_dtd.py::TestDTD::test_comment_following - Not Implemented 1219s XFAIL tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting - Not Implemented 1219s 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 1219s XFAIL tests/translate/storage/test_po.py::TestPOFile::test_kde_plurals - Not Implemented 1219s XFAIL tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_untranslated - Check differing behaviours between pypo and cpo 1219s XFAIL tests/translate/storage/test_po.py::TestPOFile::test_wrap_parenthesis - Incompatible wrapping with gettext, see #5251 1219s XFAIL tests/translate/storage/test_properties.py::TestXWikiFullPage::test_remove - removal not working in full page 1219s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_plurals - Not Implemented 1219s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_untranslated - Check differing behaviours between pypo and cpo 1219s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_parenthesis - Incompatible wrapping with gettext, see #5251 1219s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_typecomment - Not sure if this can not be parsed gracefully 1219s XFAIL tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_note_sanity - Not Implemented 1219s XFAIL tests/translate/tools/test_pocount.py::TestCount::test_plurals_kde - Support commented out pending removal 1219s XFAIL tests/translate/tools/test_pomerge.py::TestPOMerge::test_escape_tabs - Not Implemented 1219s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgid_change - Not Implemented 1219s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_accelerator_changes - Not Implemented 1219s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_lines_cut_differently - Not Implemented 1219s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgid_change - Not Implemented 1219s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_accelerator_changes - Not Implemented 1219s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_lines_cut_differently - Not Implemented 1219s ========= 3279 passed, 22 skipped, 41 xfailed, 127 warnings in 15.66s ========== 1220s autopkgtest [11:44:11]: test python3-translate: -----------------------] 1220s python3-translate PASS 1220s autopkgtest [11:44:11]: test python3-translate: - - - - - - - - - - results - - - - - - - - - - 1220s autopkgtest [11:44:11]: test python3-translate-commands: preparing testbed 1308s autopkgtest [11:45:39]: testbed dpkg architecture: amd64 1308s autopkgtest [11:45:39]: testbed apt version: 2.9.8 1308s autopkgtest [11:45:39]: @@@@@@@@@@@@@@@@@@@@ test bed setup 1308s Get:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease [73.9 kB] 1308s Get:2 http://ftpmaster.internal/ubuntu plucky-proposed/main Sources [30.5 kB] 1308s Get:3 http://ftpmaster.internal/ubuntu plucky-proposed/multiverse Sources [2840 B] 1308s Get:4 http://ftpmaster.internal/ubuntu plucky-proposed/universe Sources [213 kB] 1308s Get:5 http://ftpmaster.internal/ubuntu plucky-proposed/restricted Sources [7016 B] 1308s Get:6 http://ftpmaster.internal/ubuntu plucky-proposed/main i386 Packages [25.6 kB] 1308s Get:7 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 Packages [66.9 kB] 1308s Get:8 http://ftpmaster.internal/ubuntu plucky-proposed/restricted amd64 Packages [32.6 kB] 1308s Get:9 http://ftpmaster.internal/ubuntu plucky-proposed/universe amd64 Packages [258 kB] 1308s Get:10 http://ftpmaster.internal/ubuntu plucky-proposed/universe i386 Packages [84.3 kB] 1308s Fetched 794 kB in 0s (4932 kB/s) 1308s Reading package lists... 1309s Reading package lists... 1310s Building dependency tree... 1310s Reading state information... 1310s Calculating upgrade... 1310s The following NEW packages will be installed: 1310s python3-jaraco.text 1310s The following packages will be upgraded: 1310s python3-pkg-resources python3-setuptools 1310s 2 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. 1310s Need to get 802 kB of archives. 1310s After this operation, 12.3 kB of additional disk space will be used. 1310s Get:1 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-jaraco.text all 4.0.0-1 [11.5 kB] 1310s Get:2 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 python3-pkg-resources all 75.2.0-1 [134 kB] 1310s Get:3 http://ftpmaster.internal/ubuntu plucky-proposed/main amd64 python3-setuptools all 75.2.0-1 [657 kB] 1310s Fetched 802 kB in 0s (22.4 MB/s) 1310s Selecting previously unselected package python3-jaraco.text. 1311s (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 ... 75315 files and directories currently installed.) 1311s Preparing to unpack .../python3-jaraco.text_4.0.0-1_all.deb ... 1311s Unpacking python3-jaraco.text (4.0.0-1) ... 1311s Preparing to unpack .../python3-pkg-resources_75.2.0-1_all.deb ... 1311s Unpacking python3-pkg-resources (75.2.0-1) over (74.1.2-1) ... 1311s Preparing to unpack .../python3-setuptools_75.2.0-1_all.deb ... 1311s Unpacking python3-setuptools (75.2.0-1) over (74.1.2-1) ... 1311s Setting up python3-pkg-resources (75.2.0-1) ... 1311s Setting up python3-jaraco.text (4.0.0-1) ... 1311s Setting up python3-setuptools (75.2.0-1) ... 1313s Reading package lists... 1313s Building dependency tree... 1313s Reading state information... 1313s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1313s Hit:1 http://ftpmaster.internal/ubuntu plucky-proposed InRelease 1313s Hit:2 http://ftpmaster.internal/ubuntu plucky InRelease 1313s Hit:3 http://ftpmaster.internal/ubuntu plucky-updates InRelease 1313s Hit:4 http://ftpmaster.internal/ubuntu plucky-security InRelease 1314s Reading package lists... 1314s Reading package lists... 1314s Building dependency tree... 1314s Reading state information... 1314s Calculating upgrade... 1314s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1314s Reading package lists... 1315s Building dependency tree... 1315s Reading state information... 1315s 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1316s Reading package lists... 1316s Building dependency tree... 1316s Reading state information... 1316s Starting pkgProblemResolver with broken count: 0 1316s Starting 2 pkgProblemResolver with broken count: 0 1316s Done 1317s The following additional packages will be installed: 1317s dictionaries-common emacsen-common gettext hunspell-en-us libapr1t64 1317s libaprutil1t64 libaspell15 libenchant-2-2 libexttextcat-data libgomp1 1317s libhunspell-1.7-0 libserf-1-1 libsvn1 libutf8proc3 libxapian30 libxslt1.1 1317s python3-aeidon python3-all python3-bs4 python3-charset-normalizer 1317s python3-cheroot python3-dateutil python3-diff-match-patch python3-enchant 1317s python3-iniconfig python3-iniparse python3-levenshtein python3-lxml 1317s python3-mistletoe python3-packaging python3-phply python3-pluggy python3-ply 1317s python3-pycountry python3-pytest python3-rapidfuzz python3-ruamel.yaml 1317s python3-ruamel.yaml.clib python3-simplejson python3-six python3-soupsieve 1317s python3-syrupy python3-translate python3-vobject python3-wcwidth 1317s python3-xapian subversion translate-toolkit 1317s Suggested packages: 1317s ispell | aspell | hunspell wordlist autopoint gettext-doc libasprintf-dev 1317s libgettextpo-dev hunspell openoffice.org-hunspell | openoffice.org-core 1317s aspell libenchant-2-voikko xapian-tools python-charset-normalizer-doc 1317s python-lxml-doc python-ply-doc python-rapidfuzz-doc python3-subversion 1317s translate-toolkit-doc xapian-doc db5.3-util libapache2-mod-svn 1317s subversion-tools 1317s Recommended packages: 1317s aspell-en | aspell-dictionary | aspell6a-dictionary enchant-2 1317s python3-cssselect python3-html5lib python3-tz translate-toolkit-doc 1317s The following NEW packages will be installed: 1317s autopkgtest-satdep dictionaries-common emacsen-common gettext hunspell-en-us 1317s libapr1t64 libaprutil1t64 libaspell15 libenchant-2-2 libexttextcat-data 1317s libgomp1 libhunspell-1.7-0 libserf-1-1 libsvn1 libutf8proc3 libxapian30 1317s libxslt1.1 python3-aeidon python3-all python3-bs4 python3-charset-normalizer 1317s python3-cheroot python3-dateutil python3-diff-match-patch python3-enchant 1317s python3-iniconfig python3-iniparse python3-levenshtein python3-lxml 1317s python3-mistletoe python3-packaging python3-phply python3-pluggy python3-ply 1317s python3-pycountry python3-pytest python3-rapidfuzz python3-ruamel.yaml 1317s python3-ruamel.yaml.clib python3-simplejson python3-six python3-soupsieve 1317s python3-syrupy python3-translate python3-vobject python3-wcwidth 1317s python3-xapian subversion translate-toolkit 1317s 0 upgraded, 49 newly installed, 0 to remove and 0 not upgraded. 1317s Need to get 11.8 MB/11.8 MB of archives. 1317s After this operation, 54.9 MB of additional disk space will be used. 1317s Get:1 /tmp/autopkgtest.5UDgDC/3-autopkgtest-satdep.deb autopkgtest-satdep amd64 0 [904 B] 1317s Get:2 http://ftpmaster.internal/ubuntu plucky/main amd64 emacsen-common all 3.0.5 [12.1 kB] 1317s Get:3 http://ftpmaster.internal/ubuntu plucky/main amd64 dictionaries-common all 1.29.7 [188 kB] 1317s Get:4 http://ftpmaster.internal/ubuntu plucky/main amd64 libgomp1 amd64 14.2.0-7ubuntu1 [148 kB] 1317s Get:5 http://ftpmaster.internal/ubuntu plucky/main amd64 gettext amd64 0.22.5-2 [948 kB] 1317s Get:6 http://ftpmaster.internal/ubuntu plucky/main amd64 hunspell-en-us all 1:2020.12.07-2 [280 kB] 1317s Get:7 http://ftpmaster.internal/ubuntu plucky/main amd64 libapr1t64 amd64 1.7.2-3.2ubuntu1 [108 kB] 1317s Get:8 http://ftpmaster.internal/ubuntu plucky/main amd64 libaprutil1t64 amd64 1.6.3-3ubuntu1 [92.8 kB] 1317s Get:9 http://ftpmaster.internal/ubuntu plucky/main amd64 libaspell15 amd64 0.60.8.1-1build1 [323 kB] 1317s Get:10 http://ftpmaster.internal/ubuntu plucky/main amd64 libhunspell-1.7-0 amd64 1.7.2+really1.7.2-10build3 [294 kB] 1317s Get:11 http://ftpmaster.internal/ubuntu plucky/main amd64 libenchant-2-2 amd64 2.3.3-2build2 [51.4 kB] 1317s Get:12 http://ftpmaster.internal/ubuntu plucky/main amd64 libexttextcat-data all 3.4.7-1build1 [193 kB] 1317s Get:13 http://ftpmaster.internal/ubuntu plucky/universe amd64 libserf-1-1 amd64 1.3.10-3ubuntu1 [48.2 kB] 1317s Get:14 http://ftpmaster.internal/ubuntu plucky/universe amd64 libutf8proc3 amd64 2.9.0-1build1 [70.6 kB] 1317s Get:15 http://ftpmaster.internal/ubuntu plucky/universe amd64 libsvn1 amd64 1.14.4-2 [1353 kB] 1317s Get:16 http://ftpmaster.internal/ubuntu plucky/universe amd64 libxapian30 amd64 1.4.25-1 [718 kB] 1317s Get:17 http://ftpmaster.internal/ubuntu plucky/main amd64 libxslt1.1 amd64 1.1.39-0exp1ubuntu1 [169 kB] 1317s Get:18 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-aeidon all 1.15-1 [231 kB] 1317s Get:19 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-all amd64 3.12.6-0ubuntu1 [886 B] 1317s Get:20 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-soupsieve all 2.6-1 [33.0 kB] 1317s Get:21 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-bs4 all 4.12.3-3 [109 kB] 1317s Get:22 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-charset-normalizer amd64 3.3.2-2 [118 kB] 1317s Get:23 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-cheroot all 10.0.0+ds1-2 [73.0 kB] 1317s Get:24 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-six all 1.16.0-7 [13.1 kB] 1317s Get:25 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-dateutil all 2.9.0-2 [80.3 kB] 1317s Get:26 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-diff-match-patch all 20230430-1 [33.1 kB] 1317s Get:27 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-enchant all 3.2.2-1 [34.0 kB] 1317s Get:28 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-iniconfig all 1.1.1-2 [6024 B] 1317s Get:29 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-rapidfuzz amd64 3.9.4+ds-1 [2028 kB] 1317s Get:30 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-levenshtein amd64 0.25.1-3 [120 kB] 1317s Get:31 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-lxml amd64 5.3.0-1 [1282 kB] 1317s Get:32 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-mistletoe all 1.3.0-1 [38.0 kB] 1317s Get:33 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-packaging all 24.1-1 [41.4 kB] 1317s Get:34 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-ply all 3.11-7 [45.4 kB] 1317s Get:35 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-phply all 1.2.6-1 [50.5 kB] 1317s Get:36 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-pluggy all 1.5.0-1 [21.0 kB] 1317s Get:37 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-pytest all 8.3.2-1 [251 kB] 1317s Get:38 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-ruamel.yaml.clib amd64 0.2.8+ds-2 [138 kB] 1317s Get:39 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-ruamel.yaml all 0.18.6+ds-3 [126 kB] 1317s Get:40 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-simplejson amd64 3.19.2-1build2 [54.5 kB] 1317s Get:41 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-syrupy all 4.6.1-1 [42.8 kB] 1317s Get:42 http://ftpmaster.internal/ubuntu plucky/main amd64 python3-wcwidth all 0.2.13+dfsg1-1 [26.3 kB] 1317s Get:43 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-translate all 3.13.2-2 [319 kB] 1317s Get:44 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-vobject all 0.9.6.1-2 [40.6 kB] 1317s Get:45 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-xapian amd64 1.4.25-1build3 [441 kB] 1317s Get:46 http://ftpmaster.internal/ubuntu plucky/universe amd64 subversion amd64 1.14.4-2 [914 kB] 1317s Get:47 http://ftpmaster.internal/ubuntu plucky/universe amd64 translate-toolkit all 3.13.2-2 [81.0 kB] 1317s Get:48 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-iniparse all 0.5-2 [20.0 kB] 1317s Get:49 http://ftpmaster.internal/ubuntu plucky/universe amd64 python3-pycountry all 24.6.1+ds1-1 [30.0 kB] 1317s Preconfiguring packages ... 1317s Fetched 11.8 MB in 0s (81.8 MB/s) 1317s Selecting previously unselected package emacsen-common. 1317s (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 ... 75324 files and directories currently installed.) 1317s Preparing to unpack .../00-emacsen-common_3.0.5_all.deb ... 1317s Unpacking emacsen-common (3.0.5) ... 1317s Selecting previously unselected package dictionaries-common. 1317s Preparing to unpack .../01-dictionaries-common_1.29.7_all.deb ... 1317s Adding 'diversion of /usr/share/dict/words to /usr/share/dict/words.pre-dictionaries-common by dictionaries-common' 1317s Unpacking dictionaries-common (1.29.7) ... 1317s Selecting previously unselected package libgomp1:amd64. 1317s Preparing to unpack .../02-libgomp1_14.2.0-7ubuntu1_amd64.deb ... 1317s Unpacking libgomp1:amd64 (14.2.0-7ubuntu1) ... 1317s Selecting previously unselected package gettext. 1317s Preparing to unpack .../03-gettext_0.22.5-2_amd64.deb ... 1317s Unpacking gettext (0.22.5-2) ... 1318s Selecting previously unselected package hunspell-en-us. 1318s Preparing to unpack .../04-hunspell-en-us_1%3a2020.12.07-2_all.deb ... 1318s Unpacking hunspell-en-us (1:2020.12.07-2) ... 1318s Selecting previously unselected package libapr1t64:amd64. 1318s Preparing to unpack .../05-libapr1t64_1.7.2-3.2ubuntu1_amd64.deb ... 1318s Unpacking libapr1t64:amd64 (1.7.2-3.2ubuntu1) ... 1318s Selecting previously unselected package libaprutil1t64:amd64. 1318s Preparing to unpack .../06-libaprutil1t64_1.6.3-3ubuntu1_amd64.deb ... 1318s Unpacking libaprutil1t64:amd64 (1.6.3-3ubuntu1) ... 1318s Selecting previously unselected package libaspell15:amd64. 1318s Preparing to unpack .../07-libaspell15_0.60.8.1-1build1_amd64.deb ... 1318s Unpacking libaspell15:amd64 (0.60.8.1-1build1) ... 1318s Selecting previously unselected package libhunspell-1.7-0:amd64. 1318s Preparing to unpack .../08-libhunspell-1.7-0_1.7.2+really1.7.2-10build3_amd64.deb ... 1318s Unpacking libhunspell-1.7-0:amd64 (1.7.2+really1.7.2-10build3) ... 1318s Selecting previously unselected package libenchant-2-2:amd64. 1318s Preparing to unpack .../09-libenchant-2-2_2.3.3-2build2_amd64.deb ... 1318s Unpacking libenchant-2-2:amd64 (2.3.3-2build2) ... 1318s Selecting previously unselected package libexttextcat-data. 1318s Preparing to unpack .../10-libexttextcat-data_3.4.7-1build1_all.deb ... 1318s Unpacking libexttextcat-data (3.4.7-1build1) ... 1318s Selecting previously unselected package libserf-1-1:amd64. 1318s Preparing to unpack .../11-libserf-1-1_1.3.10-3ubuntu1_amd64.deb ... 1318s Unpacking libserf-1-1:amd64 (1.3.10-3ubuntu1) ... 1318s Selecting previously unselected package libutf8proc3:amd64. 1318s Preparing to unpack .../12-libutf8proc3_2.9.0-1build1_amd64.deb ... 1318s Unpacking libutf8proc3:amd64 (2.9.0-1build1) ... 1318s Selecting previously unselected package libsvn1:amd64. 1318s Preparing to unpack .../13-libsvn1_1.14.4-2_amd64.deb ... 1318s Unpacking libsvn1:amd64 (1.14.4-2) ... 1318s Selecting previously unselected package libxapian30:amd64. 1318s Preparing to unpack .../14-libxapian30_1.4.25-1_amd64.deb ... 1318s Unpacking libxapian30:amd64 (1.4.25-1) ... 1318s Selecting previously unselected package libxslt1.1:amd64. 1318s Preparing to unpack .../15-libxslt1.1_1.1.39-0exp1ubuntu1_amd64.deb ... 1318s Unpacking libxslt1.1:amd64 (1.1.39-0exp1ubuntu1) ... 1318s Selecting previously unselected package python3-aeidon. 1318s Preparing to unpack .../16-python3-aeidon_1.15-1_all.deb ... 1318s Unpacking python3-aeidon (1.15-1) ... 1318s Selecting previously unselected package python3-all. 1318s Preparing to unpack .../17-python3-all_3.12.6-0ubuntu1_amd64.deb ... 1318s Unpacking python3-all (3.12.6-0ubuntu1) ... 1318s Selecting previously unselected package python3-soupsieve. 1318s Preparing to unpack .../18-python3-soupsieve_2.6-1_all.deb ... 1318s Unpacking python3-soupsieve (2.6-1) ... 1318s Selecting previously unselected package python3-bs4. 1318s Preparing to unpack .../19-python3-bs4_4.12.3-3_all.deb ... 1318s Unpacking python3-bs4 (4.12.3-3) ... 1318s Selecting previously unselected package python3-charset-normalizer. 1318s Preparing to unpack .../20-python3-charset-normalizer_3.3.2-2_amd64.deb ... 1318s Unpacking python3-charset-normalizer (3.3.2-2) ... 1318s Selecting previously unselected package python3-cheroot. 1318s Preparing to unpack .../21-python3-cheroot_10.0.0+ds1-2_all.deb ... 1318s Unpacking python3-cheroot (10.0.0+ds1-2) ... 1318s Selecting previously unselected package python3-six. 1318s Preparing to unpack .../22-python3-six_1.16.0-7_all.deb ... 1318s Unpacking python3-six (1.16.0-7) ... 1318s Selecting previously unselected package python3-dateutil. 1318s Preparing to unpack .../23-python3-dateutil_2.9.0-2_all.deb ... 1318s Unpacking python3-dateutil (2.9.0-2) ... 1318s Selecting previously unselected package python3-diff-match-patch. 1318s Preparing to unpack .../24-python3-diff-match-patch_20230430-1_all.deb ... 1318s Unpacking python3-diff-match-patch (20230430-1) ... 1318s Selecting previously unselected package python3-enchant. 1318s Preparing to unpack .../25-python3-enchant_3.2.2-1_all.deb ... 1318s Unpacking python3-enchant (3.2.2-1) ... 1318s Selecting previously unselected package python3-iniconfig. 1318s Preparing to unpack .../26-python3-iniconfig_1.1.1-2_all.deb ... 1318s Unpacking python3-iniconfig (1.1.1-2) ... 1318s Selecting previously unselected package python3-rapidfuzz. 1318s Preparing to unpack .../27-python3-rapidfuzz_3.9.4+ds-1_amd64.deb ... 1318s Unpacking python3-rapidfuzz (3.9.4+ds-1) ... 1318s Selecting previously unselected package python3-levenshtein. 1318s Preparing to unpack .../28-python3-levenshtein_0.25.1-3_amd64.deb ... 1318s Unpacking python3-levenshtein (0.25.1-3) ... 1318s Selecting previously unselected package python3-lxml:amd64. 1318s Preparing to unpack .../29-python3-lxml_5.3.0-1_amd64.deb ... 1318s Unpacking python3-lxml:amd64 (5.3.0-1) ... 1318s Selecting previously unselected package python3-mistletoe. 1318s Preparing to unpack .../30-python3-mistletoe_1.3.0-1_all.deb ... 1318s Unpacking python3-mistletoe (1.3.0-1) ... 1318s Selecting previously unselected package python3-packaging. 1318s Preparing to unpack .../31-python3-packaging_24.1-1_all.deb ... 1318s Unpacking python3-packaging (24.1-1) ... 1318s Selecting previously unselected package python3-ply. 1318s Preparing to unpack .../32-python3-ply_3.11-7_all.deb ... 1318s Unpacking python3-ply (3.11-7) ... 1318s Selecting previously unselected package python3-phply. 1318s Preparing to unpack .../33-python3-phply_1.2.6-1_all.deb ... 1318s Unpacking python3-phply (1.2.6-1) ... 1318s Selecting previously unselected package python3-pluggy. 1318s Preparing to unpack .../34-python3-pluggy_1.5.0-1_all.deb ... 1318s Unpacking python3-pluggy (1.5.0-1) ... 1318s Selecting previously unselected package python3-pytest. 1318s Preparing to unpack .../35-python3-pytest_8.3.2-1_all.deb ... 1318s Unpacking python3-pytest (8.3.2-1) ... 1319s Selecting previously unselected package python3-ruamel.yaml.clib:amd64. 1319s Preparing to unpack .../36-python3-ruamel.yaml.clib_0.2.8+ds-2_amd64.deb ... 1319s Unpacking python3-ruamel.yaml.clib:amd64 (0.2.8+ds-2) ... 1319s Selecting previously unselected package python3-ruamel.yaml. 1319s Preparing to unpack .../37-python3-ruamel.yaml_0.18.6+ds-3_all.deb ... 1319s Unpacking python3-ruamel.yaml (0.18.6+ds-3) ... 1319s Selecting previously unselected package python3-simplejson. 1319s Preparing to unpack .../38-python3-simplejson_3.19.2-1build2_amd64.deb ... 1319s Unpacking python3-simplejson (3.19.2-1build2) ... 1319s Selecting previously unselected package python3-syrupy. 1319s Preparing to unpack .../39-python3-syrupy_4.6.1-1_all.deb ... 1319s Unpacking python3-syrupy (4.6.1-1) ... 1319s Selecting previously unselected package python3-wcwidth. 1319s Preparing to unpack .../40-python3-wcwidth_0.2.13+dfsg1-1_all.deb ... 1319s Unpacking python3-wcwidth (0.2.13+dfsg1-1) ... 1319s Selecting previously unselected package python3-translate. 1319s Preparing to unpack .../41-python3-translate_3.13.2-2_all.deb ... 1319s Unpacking python3-translate (3.13.2-2) ... 1319s Selecting previously unselected package python3-vobject. 1319s Preparing to unpack .../42-python3-vobject_0.9.6.1-2_all.deb ... 1319s Unpacking python3-vobject (0.9.6.1-2) ... 1319s Selecting previously unselected package python3-xapian. 1319s Preparing to unpack .../43-python3-xapian_1.4.25-1build3_amd64.deb ... 1319s Unpacking python3-xapian (1.4.25-1build3) ... 1319s Selecting previously unselected package subversion. 1319s Preparing to unpack .../44-subversion_1.14.4-2_amd64.deb ... 1319s Unpacking subversion (1.14.4-2) ... 1319s Selecting previously unselected package translate-toolkit. 1319s Preparing to unpack .../45-translate-toolkit_3.13.2-2_all.deb ... 1319s Unpacking translate-toolkit (3.13.2-2) ... 1319s Selecting previously unselected package python3-iniparse. 1319s Preparing to unpack .../46-python3-iniparse_0.5-2_all.deb ... 1319s Unpacking python3-iniparse (0.5-2) ... 1319s Selecting previously unselected package python3-pycountry. 1319s Preparing to unpack .../47-python3-pycountry_24.6.1+ds1-1_all.deb ... 1319s Unpacking python3-pycountry (24.6.1+ds1-1) ... 1319s Selecting previously unselected package autopkgtest-satdep. 1319s Preparing to unpack .../48-3-autopkgtest-satdep.deb ... 1319s Unpacking autopkgtest-satdep (0) ... 1319s Setting up python3-iniconfig (1.1.1-2) ... 1319s Setting up libxapian30:amd64 (1.4.25-1) ... 1319s Setting up python3-rapidfuzz (3.9.4+ds-1) ... 1319s Setting up python3-diff-match-patch (20230430-1) ... 1319s Setting up python3-aeidon (1.15-1) ... 1320s Setting up libutf8proc3:amd64 (2.9.0-1build1) ... 1320s Setting up libaspell15:amd64 (0.60.8.1-1build1) ... 1320s Setting up python3-charset-normalizer (3.3.2-2) ... 1320s Setting up python3-ply (3.11-7) ... 1320s Setting up python3-ruamel.yaml.clib:amd64 (0.2.8+ds-2) ... 1320s Setting up python3-all (3.12.6-0ubuntu1) ... 1320s Setting up libgomp1:amd64 (14.2.0-7ubuntu1) ... 1320s Setting up python3-six (1.16.0-7) ... 1320s Setting up python3-simplejson (3.19.2-1build2) ... 1320s Setting up python3-packaging (24.1-1) ... 1320s Setting up python3-wcwidth (0.2.13+dfsg1-1) ... 1320s Setting up emacsen-common (3.0.5) ... 1320s Setting up python3-cheroot (10.0.0+ds1-2) ... 1321s Setting up python3-pycountry (24.6.1+ds1-1) ... 1321s Setting up python3-xapian (1.4.25-1build3) ... 1321s Setting up python3-pluggy (1.5.0-1) ... 1321s Setting up python3-ruamel.yaml (0.18.6+ds-3) ... 1321s Setting up python3-mistletoe (1.3.0-1) ... 1321s Setting up libexttextcat-data (3.4.7-1build1) ... 1321s Setting up libapr1t64:amd64 (1.7.2-3.2ubuntu1) ... 1321s Setting up libxslt1.1:amd64 (1.1.39-0exp1ubuntu1) ... 1321s Setting up python3-dateutil (2.9.0-2) ... 1321s Setting up python3-levenshtein (0.25.1-3) ... 1321s Setting up libhunspell-1.7-0:amd64 (1.7.2+really1.7.2-10build3) ... 1321s Setting up python3-soupsieve (2.6-1) ... 1322s Setting up python3-iniparse (0.5-2) ... 1322s Setting up libaprutil1t64:amd64 (1.6.3-3ubuntu1) ... 1322s Setting up python3-vobject (0.9.6.1-2) ... 1322s /usr/lib/python3/dist-packages/vobject/base.py:736: SyntaxWarning: invalid escape sequence '\-' 1322s patterns['name'] = '[a-zA-Z0-9\-_]+' 1322s /usr/lib/python3/dist-packages/vobject/base.py:1219: SyntaxWarning: invalid escape sequence '\;' 1322s s = s.replace("\\", "\\\\").replace(";", "\;").replace(",", "\,") 1322s /usr/lib/python3/dist-packages/vobject/base.py:1219: SyntaxWarning: invalid escape sequence '\,' 1322s s = s.replace("\\", "\\\\").replace(";", "\;").replace(",", "\,") 1322s /usr/lib/python3/dist-packages/vobject/hcalendar.py:1: SyntaxWarning: invalid escape sequence '\,' 1322s """ 1322s Setting up gettext (0.22.5-2) ... 1322s Setting up python3-phply (1.2.6-1) ... 1322s Setting up dictionaries-common (1.29.7) ... 1322s Setting up python3-pytest (8.3.2-1) ... 1323s Setting up python3-syrupy (4.6.1-1) ... 1323s Setting up libserf-1-1:amd64 (1.3.10-3ubuntu1) ... 1323s Setting up python3-bs4 (4.12.3-3) ... 1323s Setting up python3-lxml:amd64 (5.3.0-1) ... 1323s Setting up hunspell-en-us (1:2020.12.07-2) ... 1323s Setting up libsvn1:amd64 (1.14.4-2) ... 1323s Setting up libenchant-2-2:amd64 (2.3.3-2build2) ... 1323s Setting up subversion (1.14.4-2) ... 1323s Setting up python3-enchant (3.2.2-1) ... 1323s Setting up python3-translate (3.13.2-2) ... 1324s Setting up translate-toolkit (3.13.2-2) ... 1324s Setting up autopkgtest-satdep (0) ... 1324s Processing triggers for man-db (2.12.1-3) ... 1325s Processing triggers for install-info (7.1.1-1) ... 1325s Processing triggers for libc-bin (2.40-1ubuntu3) ... 1325s Processing triggers for dictionaries-common (1.29.7) ... 1328s (Reading database ... 79004 files and directories currently installed.) 1328s Removing autopkgtest-satdep (0) ... 1328s autopkgtest [11:45:59]: test python3-translate-commands: [----------------------- 1329s ============================= test session starts ============================== 1329s platform linux -- Python 3.12.7, pytest-8.3.2, pluggy-1.5.0 -- /usr/bin/python3.12 1329s cachedir: .pytest_cache 1329s rootdir: /tmp/autopkgtest.5UDgDC/autopkgtest_tmp 1329s plugins: typeguard-4.3.0, syrupy-4.6.1 1334s collecting ... collected 3340 items / 2 skipped 1334s 1334s tests/odf_xliff/test_odf_xliff.py::test_odf2xliff PASSED [ 0%] 1334s tests/odf_xliff/test_odf_xliff.py::test_roundtrip PASSED [ 0%] 1334s tests/odf_xliff/test_odf_xliff.py::test_odf2xliff2_inline PASSED [ 0%] 1334s tests/translate/convert/test_accesskey.py::test_get_label_and_accesskey PASSED [ 0%] 1334s tests/translate/convert/test_accesskey.py::test_extract_bad_accesskeys PASSED [ 0%] 1334s tests/translate/convert/test_accesskey.py::test_ignore_entities PASSED [ 0%] 1334s tests/translate/convert/test_accesskey.py::test_alternate_accesskey_marker PASSED [ 0%] 1334s tests/translate/convert/test_accesskey.py::test_unicode PASSED [ 0%] 1334s tests/translate/convert/test_accesskey.py::test_numeric PASSED [ 0%] 1334s tests/translate/convert/test_accesskey.py::test_empty_string PASSED [ 0%] 1334s tests/translate/convert/test_accesskey.py::test_end_of_string PASSED [ 0%] 1334s tests/translate/convert/test_accesskey.py::test_combine_label_accesskey PASSED [ 0%] 1334s tests/translate/convert/test_accesskey.py::test_combine_label_accesskey_different_capitals PASSED [ 0%] 1334s tests/translate/convert/test_accesskey.py::test_uncombinable PASSED [ 0%] 1334s tests/translate/convert/test_accesskey.py::test_accesskey_already_in_text PASSED [ 0%] 1334s tests/translate/convert/test_android2po.py::TestAndroid2PO::test_no_template_units PASSED [ 0%] 1334s tests/translate/convert/test_android2po.py::TestAndroid2PO::test_template_units PASSED [ 0%] 1334s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_no_template_units PASSED [ 0%] 1334s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_template_units PASSED [ 0%] 1334s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_help PASSED [ 0%] 1334s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_convertandroid PASSED [ 0%] 1334s tests/translate/convert/test_convert.py::TestConvertCommand::test_help PASSED [ 0%] 1334s tests/translate/convert/test_csv2po.py::test_replacestrings PASSED [ 0%] 1334s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_simpleentity PASSED [ 0%] 1334s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_simpleentity_with_template PASSED [ 0%] 1334s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_newlines PASSED [ 0%] 1334s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_tabs PASSED [ 0%] 1334s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_quotes PASSED [ 0%] 1334s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_empties PASSED [ 0%] 1334s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_kdecomment PASSED [ 0%] 1334s tests/translate/convert/test_csv2po.py::TestCSV2PO::test_escaped_newlines PASSED [ 0%] 1334s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_simpleentity PASSED [ 0%] 1334s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_simpleentity_with_template PASSED [ 0%] 1334s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_newlines PASSED [ 1%] 1334s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_tabs PASSED [ 1%] 1334s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_quotes PASSED [ 1%] 1334s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_empties PASSED [ 1%] 1334s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_kdecomment PASSED [ 1%] 1334s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_escaped_newlines PASSED [ 1%] 1334s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_help PASSED [ 1%] 1334s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder PASSED [ 1%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_simpleentity PASSED [ 1%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_convertdtd PASSED [ 1%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_apos PASSED [ 1%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_quotes PASSED [ 1%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_emptyentity PASSED [ 1%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_two_empty_entities PASSED [ 1%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_emptyentity_translated PASSED [ 1%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_localisaton_note_simple PASSED [ 1%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_localisation_note_merge PASSED [ 1%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_simple PASSED [ 1%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_label PASSED [ 1%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_onlyentity PASSED [ 1%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_donttranslate_commentedout PASSED [ 1%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_spaces_at_start_of_dtd_lines PASSED [ 1%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accesskeys_folding PASSED [ 1%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accesskeys_mismatch PASSED [ 1%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_carriage_return_in_multiline_dtd PASSED [ 1%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_multiline_with_blankline PASSED [ 1%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_multiline_closing_quotes PASSED [ 1%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_preserving_spaces PASSED [ 1%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_escaping_newline_tabs PASSED [ 1%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_abandoned_accelerator PASSED [ 1%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_unassociable_accelerator PASSED [ 1%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_changed_labels_and_accelerators PASSED [ 1%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accelerator_keys_not_in_sentence XFAIL [ 1%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_exclude_entity_includes PASSED [ 2%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_linewraps PASSED [ 2%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_merging_with_new_untranslated PASSED [ 2%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_merge_without_template PASSED [ 2%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_simpleentity PASSED [ 2%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_convertdtd PASSED [ 2%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_apos PASSED [ 2%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_quotes PASSED [ 2%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_emptyentity PASSED [ 2%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_two_empty_entities PASSED [ 2%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_emptyentity_translated PASSED [ 2%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_localisaton_note_simple PASSED [ 2%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_localisation_note_merge PASSED [ 2%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_simple PASSED [ 2%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_label PASSED [ 2%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_onlyentity PASSED [ 2%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_donttranslate_commentedout PASSED [ 2%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_spaces_at_start_of_dtd_lines PASSED [ 2%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accesskeys_folding PASSED [ 2%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accesskeys_mismatch PASSED [ 2%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_carriage_return_in_multiline_dtd PASSED [ 2%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_multiline_with_blankline PASSED [ 2%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_multiline_closing_quotes PASSED [ 2%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_preserving_spaces PASSED [ 2%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_escaping_newline_tabs PASSED [ 2%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_abandoned_accelerator PASSED [ 2%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_unassociable_accelerator PASSED [ 2%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_changed_labels_and_accelerators PASSED [ 2%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accelerator_keys_not_in_sentence XFAIL [ 2%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_exclude_entity_includes PASSED [ 2%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_linewraps PASSED [ 2%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_merging_with_new_untranslated PASSED [ 2%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_merge_without_template PASSED [ 2%] 1334s tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_help PASSED [ 2%] 1334s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_defaults PASSED [ 3%] 1334s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_root_name PASSED [ 3%] 1334s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_value_name PASSED [ 3%] 1334s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_key PASSED [ 3%] 1334s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_default_namespace PASSED [ 3%] 1334s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_namespace_prefix PASSED [ 3%] 1334s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_all_parameters PASSED [ 3%] 1334s tests/translate/convert/test_flatxml2po.py::TestFlatXML2PO::test_empty_file_is_empty_store PASSED [ 3%] 1334s tests/translate/convert/test_flatxml2po.py::TestFlatXML2POCommand::test_help PASSED [ 3%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_extract_lang_attribute_from_html_tag PASSED [ 3%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_do_not_extract_lang_attribute_from_tags_other_than_html PASSED [ 3%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_title PASSED [ 3%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_title_with_linebreak PASSED [ 3%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_meta PASSED [ 3%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p PASSED [ 3%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_br PASSED [ 3%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_linebreak PASSED [ 3%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_p_with_linebreak_and_embedded_br PASSED [ 3%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_uppercase_html PASSED [ 3%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_div PASSED [ 3%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_div_with_linebreaks PASSED [ 3%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_a PASSED [ 3%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_a_with_linebreak PASSED [ 3%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_sequence_of_anchor_elements PASSED [ 3%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_img PASSED [ 3%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_img_empty PASSED [ 3%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_img_inside_a PASSED [ 3%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_tag_table_summary PASSED [ 3%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_simple PASSED [ 3%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_complex PASSED [ 3%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_table_empty PASSED [ 3%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_address PASSED [ 3%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_headings PASSED [ 3%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_headings_with_linebreaks PASSED [ 4%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_dt PASSED [ 4%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_dd PASSED [ 4%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_span PASSED [ 4%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_ul PASSED [ 4%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_nested_lists PASSED [ 4%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_duplicates PASSED [ 4%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_multiline_reflow PASSED [ 4%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_nested_tags PASSED [ 4%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_carriage_return PASSED [ 4%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_encoding_latin1 PASSED [ 4%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_strip_html PASSED [ 4%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_entityrefs_in_text PASSED [ 4%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_entityrefs_in_attributes PASSED [ 4%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_charrefs PASSED [ 4%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php PASSED [ 4%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_multiple_php PASSED [ 4%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php_multiline PASSED [ 4%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_php_with_embedded_html PASSED [ 4%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_comments PASSED [ 4%] 1334s tests/translate/convert/test_html2po.py::TestHTML2PO::test_attribute_without_value PASSED [ 4%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_extract_lang_attribute_from_html_tag PASSED [ 4%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_do_not_extract_lang_attribute_from_tags_other_than_html PASSED [ 4%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_title PASSED [ 4%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_title_with_linebreak PASSED [ 4%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_meta PASSED [ 4%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p PASSED [ 4%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_br PASSED [ 4%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_linebreak PASSED [ 4%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_p_with_linebreak_and_embedded_br PASSED [ 4%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_uppercase_html PASSED [ 4%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_div PASSED [ 4%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_div_with_linebreaks PASSED [ 4%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_a PASSED [ 5%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_a_with_linebreak PASSED [ 5%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_sequence_of_anchor_elements PASSED [ 5%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_img PASSED [ 5%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_img_empty PASSED [ 5%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_img_inside_a PASSED [ 5%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_tag_table_summary PASSED [ 5%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_simple PASSED [ 5%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_complex PASSED [ 5%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_table_empty PASSED [ 5%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_address PASSED [ 5%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_headings PASSED [ 5%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_headings_with_linebreaks PASSED [ 5%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_dt PASSED [ 5%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_dd PASSED [ 5%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_span PASSED [ 5%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_ul PASSED [ 5%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_nested_lists PASSED [ 5%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_duplicates PASSED [ 5%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multiline_reflow PASSED [ 5%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_nested_tags PASSED [ 5%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_carriage_return PASSED [ 5%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_encoding_latin1 PASSED [ 5%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_strip_html PASSED [ 5%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_entityrefs_in_text PASSED [ 5%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_entityrefs_in_attributes PASSED [ 5%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_charrefs PASSED [ 5%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php PASSED [ 5%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multiple_php PASSED [ 5%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php_multiline PASSED [ 5%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_php_with_embedded_html PASSED [ 5%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_comments PASSED [ 5%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_attribute_without_value PASSED [ 5%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_help PASSED [ 5%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_single PASSED [ 6%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_onefile PASSED [ 6%] 1334s tests/translate/convert/test_html2po.py::TestHTML2POCommand::test_multifile_onefile_to_stdout PASSED [ 6%] 1334s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_convert_empty_file PASSED [ 6%] 1334s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_no_translations PASSED [ 6%] 1334s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_summary PASSED [ 6%] 1334s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_description PASSED [ 6%] 1334s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_location PASSED [ 6%] 1334s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_comment PASSED [ 6%] 1334s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_no_template_duplicate_style PASSED [ 6%] 1334s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge PASSED [ 6%] 1334s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_misaligned_files PASSED [ 6%] 1334s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_blank_msgstr PASSED [ 6%] 1334s tests/translate/convert/test_ical2po.py::TestIcal2PO::test_merge_duplicate_style PASSED [ 6%] 1334s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_convert_empty_file PASSED [ 6%] 1334s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_no_translations PASSED [ 6%] 1334s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_summary PASSED [ 6%] 1334s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_description PASSED [ 6%] 1334s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_location PASSED [ 6%] 1334s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_comment PASSED [ 6%] 1334s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_no_template_duplicate_style PASSED [ 6%] 1334s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge PASSED [ 6%] 1334s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_misaligned_files PASSED [ 6%] 1334s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_blank_msgstr PASSED [ 6%] 1334s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_merge_duplicate_style PASSED [ 6%] 1334s tests/translate/convert/test_ical2po.py::TestIcal2POCommand::test_help PASSED [ 6%] 1334s tests/translate/convert/test_idml2po.py::TestIDML2POCommand::test_help PASSED [ 6%] 1334s tests/translate/convert/test_idml2po.py::TestIDML2POCommand::test_convert PASSED [ 6%] 1334s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_empty_file PASSED [ 6%] 1334s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_no_translation PASSED [ 6%] 1334s tests/translate/convert/test_ini2po.py::TestIni2PO::test_convert_simple PASSED [ 6%] 1334s tests/translate/convert/test_ini2po.py::TestIni2PO::test_no_duplicates PASSED [ 6%] 1334s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_simple PASSED [ 6%] 1334s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_misaligned_files PASSED [ 7%] 1334s tests/translate/convert/test_ini2po.py::TestIni2PO::test_merge_blank_msgstr PASSED [ 7%] 1334s tests/translate/convert/test_ini2po.py::TestIni2PO::test_dialects_inno PASSED [ 7%] 1334s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_empty_file PASSED [ 7%] 1334s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_no_translation PASSED [ 7%] 1334s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_convert_simple PASSED [ 7%] 1334s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_no_duplicates PASSED [ 7%] 1334s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_simple PASSED [ 7%] 1334s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_misaligned_files PASSED [ 7%] 1334s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_merge_blank_msgstr PASSED [ 7%] 1334s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_dialects_inno PASSED [ 7%] 1334s tests/translate/convert/test_ini2po.py::TestIni2POCommand::test_help PASSED [ 7%] 1334s tests/translate/convert/test_json2po.py::TestJson2PO::test_simple PASSED [ 7%] 1334s tests/translate/convert/test_json2po.py::TestJson2PO::test_three_same_keys PASSED [ 7%] 1334s tests/translate/convert/test_json2po.py::TestJson2PO::test_filter PASSED [ 7%] 1334s tests/translate/convert/test_json2po.py::TestJson2PO::test_miltiple_units PASSED [ 7%] 1334s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_simple PASSED [ 7%] 1334s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_three_same_keys PASSED [ 7%] 1334s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_filter PASSED [ 7%] 1334s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_miltiple_units PASSED [ 7%] 1334s tests/translate/convert/test_json2po.py::TestJson2POCommand::test_help PASSED [ 7%] 1334s tests/translate/convert/test_md2po.py::TestMD2PO::test_help PASSED [ 7%] 1334s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_file_with_multifile_single PASSED [ 7%] 1334s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_file_with_multifile_onefile PASSED [ 7%] 1334s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_directory_with_multifile_single PASSED [ 7%] 1334s tests/translate/convert/test_md2po.py::TestMD2PO::test_markdown_directory_with_multifile_onefile PASSED [ 7%] 1334s tests/translate/convert/test_moz2po.py::TestMoz2POCommand::test_help PASSED [ 7%] 1334s tests/translate/convert/test_mozfunny2prop.py::TestInc2PO::test_simpleentry PASSED [ 7%] 1334s tests/translate/convert/test_mozfunny2prop.py::TestInc2PO::test_uncomment_contributors PASSED [ 7%] 1334s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_convert_empty PASSED [ 7%] 1334s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_string PASSED [ 7%] 1334s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_merge PASSED [ 7%] 1334s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_entry PASSED [ 7%] 1334s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_simple_comment PASSED [ 7%] 1334s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_meta_tags PASSED [ 8%] 1334s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_keep_duplicates PASSED [ 8%] 1334s tests/translate/convert/test_mozlang2po.py::TestLang2PO::test_drop_duplicates PASSED [ 8%] 1334s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_convert_empty PASSED [ 8%] 1334s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_string PASSED [ 8%] 1334s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_merge PASSED [ 8%] 1334s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_entry PASSED [ 8%] 1334s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_simple_comment PASSED [ 8%] 1334s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_meta_tags PASSED [ 8%] 1334s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_keep_duplicates PASSED [ 8%] 1334s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_drop_duplicates PASSED [ 8%] 1334s tests/translate/convert/test_mozlang2po.py::TestLang2POCommand::test_help PASSED [ 8%] 1334s tests/translate/convert/test_ods2xliff.py::TestODF2XLIFFCommand::test_help PASSED [ 8%] 1334s tests/translate/convert/test_ods2xliff.py::TestODF2XLIFFCommand::test_convert PASSED [ 8%] 1334s tests/translate/convert/test_oo2po.py::TestOO2PO::test_simpleentity PASSED [ 8%] 1334s tests/translate/convert/test_oo2po.py::TestOO2PO::test_escapes PASSED [ 8%] 1334s tests/translate/convert/test_oo2po.py::TestOO2PO::test_roundtrip_escape PASSED [ 8%] 1334s tests/translate/convert/test_oo2po.py::TestOO2PO::test_roundtrip_whitespaceonly PASSED [ 8%] 1334s tests/translate/convert/test_oo2po.py::TestOO2PO::test_double_escapes PASSED [ 8%] 1334s tests/translate/convert/test_oo2po.py::TestOO2PO::test_escapes_helpcontent2 PASSED [ 8%] 1334s tests/translate/convert/test_oo2po.py::TestOO2PO::test_msgid_bug_error_address PASSED [ 8%] 1334s tests/translate/convert/test_oo2po.py::TestOO2PO::test_x_comment_inclusion PASSED [ 8%] 1334s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simpleentity PASSED [ 8%] 1334s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_escapes PASSED [ 8%] 1334s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_roundtrip_escape PASSED [ 8%] 1334s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_roundtrip_whitespaceonly PASSED [ 8%] 1334s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_double_escapes PASSED [ 8%] 1334s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_escapes_helpcontent2 PASSED [ 8%] 1334s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_msgid_bug_error_address PASSED [ 8%] 1334s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_x_comment_inclusion PASSED [ 8%] 1334s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_help PASSED [ 8%] 1334s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_preserve_filename PASSED [ 8%] 1334s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_pot PASSED [ 8%] 1334s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_po PASSED [ 9%] 1334s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_onefile_nonrecursive PASSED [ 9%] 1334s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_remove_duplicates PASSED [ 9%] 1334s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_simpleentity PASSED [ 9%] 1334s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_escapes PASSED [ 9%] 1334s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_roundtrip_escape PASSED [ 9%] 1334s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_roundtrip_whitespaceonly PASSED [ 9%] 1334s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_double_escapes PASSED [ 9%] 1334s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_escapes_helpcontent2 PASSED [ 9%] 1334s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_x_comment_inclusion PASSED [ 9%] 1334s tests/translate/convert/test_oo2xliff.py::TestOO2XLIFF::test_msgid_bug_error_address PASSED [ 9%] 1334s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simpleentity PASSED [ 9%] 1334s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_escapes PASSED [ 9%] 1334s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_roundtrip_escape PASSED [ 9%] 1334s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_roundtrip_whitespaceonly PASSED [ 9%] 1334s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_double_escapes PASSED [ 9%] 1334s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_escapes_helpcontent2 PASSED [ 9%] 1334s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_x_comment_inclusion PASSED [ 9%] 1334s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_msgid_bug_error_address PASSED [ 9%] 1334s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_help PASSED [ 9%] 1334s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_preserve_filename PASSED [ 9%] 1334s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_xlf PASSED [ 9%] 1334s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_po PASSED [ 9%] 1334s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_onefile_nonrecursive PASSED [ 9%] 1334s tests/translate/convert/test_php2po.py::TestPhp2PO::test_simpleentry PASSED [ 9%] 1334s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphp PASSED [ 9%] 1334s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphptemplate PASSED [ 9%] 1334s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphpmissing PASSED [ 9%] 1334s tests/translate/convert/test_php2po.py::TestPhp2PO::test_convertphpempty PASSED [ 9%] 1334s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unicode PASSED [ 9%] 1334s tests/translate/convert/test_php2po.py::TestPhp2PO::test_multiline PASSED [ 9%] 1334s tests/translate/convert/test_php2po.py::TestPhp2PO::test_comments_before PASSED [ 9%] 1334s tests/translate/convert/test_php2po.py::TestPhp2PO::test_emptyentry PASSED [ 9%] 1334s tests/translate/convert/test_php2po.py::TestPhp2PO::test_hash_comment_with_equals PASSED [ 10%] 1334s tests/translate/convert/test_php2po.py::TestPhp2PO::test_emptyentry_translated PASSED [ 10%] 1335s tests/translate/convert/test_php2po.py::TestPhp2PO::test_newlines_in_value PASSED [ 10%] 1335s tests/translate/convert/test_php2po.py::TestPhp2PO::test_spaces_in_name PASSED [ 10%] 1335s tests/translate/convert/test_php2po.py::TestPhp2PO::test_named_array PASSED [ 10%] 1335s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unnamed_array PASSED [ 10%] 1335s tests/translate/convert/test_php2po.py::TestPhp2PO::test_named_nested_arrays PASSED [ 10%] 1335s tests/translate/convert/test_php2po.py::TestPhp2PO::test_unnamed_nested_arrays PASSED [ 10%] 1335s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_simpleentry PASSED [ 10%] 1335s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphp PASSED [ 10%] 1335s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphptemplate PASSED [ 10%] 1335s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphpmissing PASSED [ 10%] 1335s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_convertphpempty PASSED [ 10%] 1335s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unicode PASSED [ 10%] 1335s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_multiline PASSED [ 10%] 1335s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_comments_before PASSED [ 10%] 1335s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_emptyentry PASSED [ 10%] 1335s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_hash_comment_with_equals PASSED [ 10%] 1335s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_emptyentry_translated PASSED [ 10%] 1335s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_newlines_in_value PASSED [ 10%] 1335s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_spaces_in_name PASSED [ 10%] 1335s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_named_array PASSED [ 10%] 1335s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unnamed_array PASSED [ 10%] 1335s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_named_nested_arrays PASSED [ 10%] 1335s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_unnamed_nested_arrays PASSED [ 10%] 1335s tests/translate/convert/test_php2po.py::TestPhp2POCommand::test_help PASSED [ 10%] 1335s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_simpleentity PASSED [ 10%] 1335s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_multiline PASSED [ 10%] 1335s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapednewlines PASSED [ 10%] 1335s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedtabs PASSED [ 10%] 1335s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedquotes PASSED [ 10%] 1335s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_escapedescape PASSED [ 10%] 1335s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_singlequotes PASSED [ 10%] 1335s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_empties PASSED [ 10%] 1335s tests/translate/convert/test_po2csv.py::TestPO2CSV::test_kdecomments PASSED [ 11%] 1335s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_simpleentity PASSED [ 11%] 1335s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_multiline PASSED [ 11%] 1335s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapednewlines PASSED [ 11%] 1335s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedtabs PASSED [ 11%] 1335s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedquotes PASSED [ 11%] 1335s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_escapedescape PASSED [ 11%] 1335s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_singlequotes PASSED [ 11%] 1335s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_empties PASSED [ 11%] 1335s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_kdecomments PASSED [ 11%] 1335s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_help PASSED [ 11%] 1335s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder PASSED [ 11%] 1335s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_context PASSED [ 11%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_joinlines PASSED [ 11%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_escapedstr PASSED [ 11%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_missingaccesskey PASSED [ 11%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskeycase PASSED [ 11%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_types PASSED [ 11%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_missing PASSED [ 11%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_no_accesskey PASSED [ 11%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_source_no_amp_in_target PASSED [ 11%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_both_amp_and_accesskey PASSED [ 11%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_amp_no_accesskey PASSED [ 11%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_entities_two PASSED [ 11%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_entities PASSED [ 11%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_comments_translator PASSED [ 11%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_retains_hashprefix PASSED [ 11%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_convertdtd PASSED [ 11%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_untranslated_with_template PASSED [ 11%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_untranslated_without_template PASSED [ 11%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_blank_source PASSED [ 11%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_newlines_escapes PASSED [ 11%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_simple PASSED [ 11%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_escape PASSED [ 12%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_quotes PASSED [ 12%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_roundtrip_amp PASSED [ 12%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_merging_entries_with_spaces_removed PASSED [ 12%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_preserving_spaces PASSED [ 12%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_preserving_spaces_after_value PASSED [ 12%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_comments PASSED [ 12%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_duplicates PASSED [ 12%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_joinlines PASSED [ 12%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_escapedstr PASSED [ 12%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_missingaccesskey PASSED [ 12%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskeycase PASSED [ 12%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_types PASSED [ 12%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_missing PASSED [ 12%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_no_accesskey PASSED [ 12%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_source_no_amp_in_target PASSED [ 12%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_both_amp_and_accesskey PASSED [ 12%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_amp_no_accesskey PASSED [ 12%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_entities_two PASSED [ 12%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_entities PASSED [ 12%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_comments_translator PASSED [ 12%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_retains_hashprefix PASSED [ 12%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_convertdtd PASSED [ 12%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_untranslated_with_template PASSED [ 12%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_untranslated_without_template PASSED [ 12%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_blank_source PASSED [ 12%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_newlines_escapes PASSED [ 12%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_simple PASSED [ 12%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_escape PASSED [ 12%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_quotes PASSED [ 12%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_roundtrip_amp PASSED [ 12%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_merging_entries_with_spaces_removed PASSED [ 12%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_preserving_spaces PASSED [ 12%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_preserving_spaces_after_value PASSED [ 12%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_comments PASSED [ 13%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_duplicates PASSED [ 13%] 1335s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_help PASSED [ 13%] 1335s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_defaults PASSED [ 13%] 1335s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_root_name PASSED [ 13%] 1335s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_value_name PASSED [ 13%] 1335s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_key PASSED [ 13%] 1335s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_default_namespace PASSED [ 13%] 1335s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_namespace_prefix PASSED [ 13%] 1335s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_indent_eight PASSED [ 13%] 1335s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXML::test_noindent PASSED [ 13%] 1335s tests/translate/convert/test_po2flatxml.py::TestPO2FlatXMLCommand::test_help PASSED [ 13%] 1335s tests/translate/convert/test_po2html.py::TestPO2Html::test_simple PASSED [ 13%] 1335s tests/translate/convert/test_po2html.py::TestPO2Html::test_linebreaks PASSED [ 13%] 1335s tests/translate/convert/test_po2html.py::TestPO2Html::test_replace_substrings PASSED [ 13%] 1335s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_outside_translatable_content PASSED [ 13%] 1335s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_within_translatable_content_not_embedded PASSED [ 13%] 1335s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_embedded_within_translatable_content PASSED [ 13%] 1335s tests/translate/convert/test_po2html.py::TestPO2Html::test_attribute_without_value PASSED [ 13%] 1335s tests/translate/convert/test_po2html.py::TestPO2Html::test_entities PASSED [ 13%] 1335s tests/translate/convert/test_po2html.py::TestPO2Html::test_escapes PASSED [ 13%] 1335s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_translated PASSED [ 13%] 1335s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_untranslated PASSED [ 13%] 1335s tests/translate/convert/test_po2html.py::TestPO2Html::test_states_fuzzy PASSED [ 13%] 1335s tests/translate/convert/test_po2html.py::TestPO2Html::test_untranslated_attributes PASSED [ 13%] 1335s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_simple PASSED [ 13%] 1335s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_linebreaks PASSED [ 13%] 1335s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_replace_substrings PASSED [ 13%] 1335s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_outside_translatable_content PASSED [ 13%] 1335s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_within_translatable_content_not_embedded PASSED [ 13%] 1335s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_embedded_within_translatable_content PASSED [ 13%] 1335s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_attribute_without_value PASSED [ 13%] 1335s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_entities PASSED [ 13%] 1335s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_escapes PASSED [ 14%] 1335s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_translated PASSED [ 14%] 1335s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_untranslated PASSED [ 14%] 1335s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_states_fuzzy PASSED [ 14%] 1335s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_untranslated_attributes PASSED [ 14%] 1335s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_help PASSED [ 14%] 1335s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_individual_files PASSED [ 14%] 1335s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_fully_recursive PASSED [ 14%] 1335s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_input_specified PASSED [ 14%] 1335s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified PASSED [ 14%] 1335s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_output_specified PASSED [ 14%] 1335s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file PASSED [ 14%] 1335s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file_and_templates_overwritten PASSED [ 14%] 1335s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_empty_file PASSED [ 14%] 1335s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_summary PASSED [ 14%] 1335s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_description PASSED [ 14%] 1335s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_location PASSED [ 14%] 1335s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_comment PASSED [ 14%] 1335s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_complex_icalendar PASSED [ 14%] 1335s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_skip_fuzzy PASSED [ 14%] 1335s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_include_fuzzy PASSED [ 14%] 1335s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_no_template PASSED [ 14%] 1335s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_template_location_not_in_source_file PASSED [ 14%] 1335s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_completion_below_threshold PASSED [ 14%] 1335s tests/translate/convert/test_po2ical.py::TestPO2Ical::test_convert_completion_above_threshold PASSED [ 14%] 1335s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_empty_file PASSED [ 14%] 1335s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_summary PASSED [ 14%] 1335s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_description PASSED [ 14%] 1335s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_location PASSED [ 14%] 1335s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_comment PASSED [ 14%] 1335s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_complex_icalendar PASSED [ 14%] 1335s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_skip_fuzzy PASSED [ 14%] 1335s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_include_fuzzy PASSED [ 14%] 1335s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_no_template PASSED [ 15%] 1335s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_template_location_not_in_source_file PASSED [ 15%] 1335s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_completion_below_threshold PASSED [ 15%] 1335s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_convert_completion_above_threshold PASSED [ 15%] 1335s tests/translate/convert/test_po2ical.py::TestPO2IcalCommand::test_help PASSED [ 15%] 1335s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_help PASSED [ 15%] 1335s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_convert PASSED [ 15%] 1335s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_no_templates PASSED [ 15%] 1335s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_simple PASSED [ 15%] 1335s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_space_preservation PASSED [ 15%] 1335s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_blank_entries PASSED [ 15%] 1335s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_fuzzy PASSED [ 15%] 1335s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_propertyless_template PASSED [ 15%] 1335s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_empty_value PASSED [ 15%] 1335s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_dialects_inno PASSED [ 15%] 1335s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_misaligned_files PASSED [ 15%] 1335s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_completion_below_threshold PASSED [ 15%] 1335s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_convert_completion_above_threshold PASSED [ 15%] 1335s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_no_fuzzy PASSED [ 15%] 1335s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_allow_fuzzy PASSED [ 15%] 1335s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_missing_source PASSED [ 15%] 1335s tests/translate/convert/test_po2ini.py::TestPO2Ini::test_merging_repeated_locations PASSED [ 15%] 1335s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_no_templates PASSED [ 15%] 1335s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_simple PASSED [ 15%] 1335s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_space_preservation PASSED [ 15%] 1335s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_blank_entries PASSED [ 15%] 1335s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_fuzzy PASSED [ 15%] 1335s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_propertyless_template PASSED [ 15%] 1335s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_empty_value PASSED [ 15%] 1335s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_dialects_inno PASSED [ 15%] 1335s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_misaligned_files PASSED [ 15%] 1335s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_completion_below_threshold PASSED [ 15%] 1335s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_convert_completion_above_threshold PASSED [ 15%] 1335s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_no_fuzzy PASSED [ 15%] 1335s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_allow_fuzzy PASSED [ 16%] 1335s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_missing_source PASSED [ 16%] 1335s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_merging_repeated_locations PASSED [ 16%] 1335s tests/translate/convert/test_po2ini.py::TestPO2IniCommand::test_help PASSED [ 16%] 1335s tests/translate/convert/test_po2json.py::TestPO2JSON::test_basic PASSED [ 16%] 1335s tests/translate/convert/test_po2json.py::TestPO2JSON::test_ordering_serialize PASSED [ 16%] 1335s tests/translate/convert/test_po2json.py::TestPO2JSON::test_dont_use_empty_translation PASSED [ 16%] 1335s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_false_remove_untranslated_false PASSED [ 16%] 1335s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_false_remove_untranslated_true PASSED [ 16%] 1335s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_true_remove_untranslated_false PASSED [ 16%] 1335s tests/translate/convert/test_po2json.py::TestPO2JSON::test_includefuzzy_true_remove_untranslated_true PASSED [ 16%] 1335s tests/translate/convert/test_po2md.py::TestPO2MD::test_help PASSED [ 16%] 1335s tests/translate/convert/test_po2md.py::TestPO2MD::test_single_markdown_file_with_single_po PASSED [ 16%] 1335s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_with_single_po PASSED [ 16%] 1335s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_and_directory_of_po_files PASSED [ 16%] 1335s tests/translate/convert/test_po2moz.py::TestPO2MozCommand::test_help PASSED [ 16%] 1335s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_empty PASSED [ 16%] 1335s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_simple PASSED [ 16%] 1335s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_comment PASSED [ 16%] 1335s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_ok_marker PASSED [ 16%] 1335s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_completion_below_threshold PASSED [ 16%] 1335s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_completion_above_threshold PASSED [ 16%] 1335s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_convert_skip_non_translatable_input PASSED [ 16%] 1335s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_no_fuzzy PASSED [ 16%] 1335s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_allow_fuzzy PASSED [ 16%] 1335s tests/translate/convert/test_po2mozlang.py::TestPO2Lang::test_mark_active PASSED [ 16%] 1335s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_empty PASSED [ 16%] 1335s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_simple PASSED [ 16%] 1335s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_comment PASSED [ 16%] 1335s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_ok_marker PASSED [ 16%] 1335s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_completion_below_threshold PASSED [ 16%] 1335s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_completion_above_threshold PASSED [ 16%] 1335s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_convert_skip_non_translatable_input PASSED [ 16%] 1335s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_no_fuzzy PASSED [ 17%] 1335s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_allow_fuzzy PASSED [ 17%] 1335s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_mark_active PASSED [ 17%] 1335s tests/translate/convert/test_po2mozlang.py::TestPO2LangCommand::test_help PASSED [ 17%] 1335s tests/translate/convert/test_po2oo.py::TestPO2OO::test_convertoo PASSED [ 17%] 1335s tests/translate/convert/test_po2oo.py::TestPO2OO::test_pofilter PASSED [ 17%] 1335s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_simple PASSED [ 17%] 1335s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_escape PASSED [ 17%] 1335s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_quotes PASSED [ 17%] 1335s tests/translate/convert/test_po2oo.py::TestPO2OO::test_roundtrip_spaces PASSED [ 17%] 1335s tests/translate/convert/test_po2oo.py::TestPO2OO::test_default_timestamp PASSED [ 17%] 1335s tests/translate/convert/test_po2oo.py::TestPO2OO::test_escape_conversion PASSED [ 17%] 1335s tests/translate/convert/test_po2oo.py::TestPO2OO::test_helpcontent_escapes PASSED [ 17%] 1335s tests/translate/convert/test_po2oo.py::TestPO2OO::test_helpcontent_escapes2 PASSED [ 17%] 1335s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_convertoo PASSED [ 17%] 1335s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_pofilter PASSED [ 17%] 1335s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_simple PASSED [ 17%] 1335s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_escape PASSED [ 17%] 1335s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_quotes PASSED [ 17%] 1335s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_spaces PASSED [ 17%] 1335s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_default_timestamp PASSED [ 17%] 1335s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_escape_conversion PASSED [ 17%] 1335s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_helpcontent_escapes PASSED [ 17%] 1335s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_helpcontent_escapes2 PASSED [ 17%] 1335s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_help PASSED [ 17%] 1335s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp PASSED [ 17%] 1335s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp_notemplate PASSED [ 17%] 1335s tests/translate/convert/test_po2php.py::TestPO2Php::test_convertphp_empty_template PASSED [ 17%] 1335s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_simple PASSED [ 17%] 1335s tests/translate/convert/test_po2php.py::TestPO2Php::test_space_preservation PASSED [ 17%] 1335s tests/translate/convert/test_po2php.py::TestPO2Php::test_preserve_unused_statement PASSED [ 17%] 1335s tests/translate/convert/test_po2php.py::TestPO2Php::test_not_translated_multiline PASSED [ 17%] 1335s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_blank_entries PASSED [ 17%] 1335s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_fuzzy PASSED [ 17%] 1335s tests/translate/convert/test_po2php.py::TestPO2Php::test_locations_with_spaces PASSED [ 18%] 1335s tests/translate/convert/test_po2php.py::TestPO2Php::test_inline_comments PASSED [ 18%] 1335s tests/translate/convert/test_po2php.py::TestPO2Php::test_block_comments PASSED [ 18%] 1335s tests/translate/convert/test_po2php.py::TestPO2Php::test_named_variables PASSED [ 18%] 1335s tests/translate/convert/test_po2php.py::TestPO2Php::test_multiline PASSED [ 18%] 1335s tests/translate/convert/test_po2php.py::TestPO2Php::test_hash_comment PASSED [ 18%] 1335s tests/translate/convert/test_po2php.py::TestPO2Php::test_arrays PASSED [ 18%] 1335s tests/translate/convert/test_po2php.py::TestPO2Php::test_named_nested_array PASSED [ 18%] 1335s tests/translate/convert/test_po2php.py::TestPO2Php::test_unnamed_nested_arrays PASSED [ 18%] 1335s tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_propertyless_template XFAIL [ 18%] 1335s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp PASSED [ 18%] 1335s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp_notemplate PASSED [ 18%] 1335s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_convertphp_empty_template PASSED [ 18%] 1335s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_simple PASSED [ 18%] 1335s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_space_preservation PASSED [ 18%] 1335s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_preserve_unused_statement PASSED [ 18%] 1335s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_not_translated_multiline PASSED [ 18%] 1335s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_blank_entries PASSED [ 18%] 1335s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_fuzzy PASSED [ 18%] 1335s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_locations_with_spaces PASSED [ 18%] 1335s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_inline_comments PASSED [ 18%] 1335s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_block_comments PASSED [ 18%] 1335s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_named_variables PASSED [ 18%] 1335s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_multiline PASSED [ 18%] 1335s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_hash_comment PASSED [ 18%] 1335s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_arrays PASSED [ 18%] 1335s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_named_nested_array PASSED [ 18%] 1335s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_unnamed_nested_arrays PASSED [ 18%] 1335s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_propertyless_template XFAIL [ 18%] 1335s tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_help PASSED [ 18%] 1335s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_simple PASSED [ 18%] 1335s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated PASSED [ 18%] 1335s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_hard_newlines_preserved PASSED [ 18%] 1335s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_space_preservation PASSED [ 19%] 1335s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_no_value PASSED [ 19%] 1335s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_no_separator PASSED [ 19%] 1335s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_blank_entries PASSED [ 19%] 1335s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_fuzzy PASSED [ 19%] 1335s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys PASSED [ 19%] 1335s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys_missing_accesskey PASSED [ 19%] 1335s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_margin_whitespace PASSED [ 19%] 1335s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_all_whitespace PASSED [ 19%] 1335s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_propertyless_template PASSED [ 19%] 1335s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_delimiters PASSED [ 19%] 1335s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_empty_value PASSED [ 19%] 1335s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_personalities PASSED [ 19%] 1335s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_simple PASSED [ 19%] 1335s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_multiline PASSED [ 19%] 1335s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_multiline2 PASSED [ 19%] 1335s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_comments PASSED [ 19%] 1335s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_untranslated_unchanged PASSED [ 19%] 1335s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_merging_blank PASSED [ 19%] 1335s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_gaia_plurals PASSED [ 19%] 1335s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_duplicates PASSED [ 19%] 1335s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_gwt_plurals PASSED [ 19%] 1335s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_simple PASSED [ 19%] 1335s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated PASSED [ 19%] 1335s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_hard_newlines_preserved PASSED [ 19%] 1335s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_space_preservation PASSED [ 19%] 1335s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_no_value PASSED [ 19%] 1335s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_no_separator PASSED [ 19%] 1335s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_blank_entries PASSED [ 19%] 1335s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_fuzzy PASSED [ 19%] 1335s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys PASSED [ 19%] 1335s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys_missing_accesskey PASSED [ 19%] 1335s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_margin_whitespace PASSED [ 19%] 1335s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_all_whitespace PASSED [ 20%] 1335s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_propertyless_template PASSED [ 20%] 1335s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_delimiters PASSED [ 20%] 1335s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_empty_value PASSED [ 20%] 1335s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_personalities PASSED [ 20%] 1335s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_simple PASSED [ 20%] 1335s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_multiline PASSED [ 20%] 1335s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_multiline2 PASSED [ 20%] 1335s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_comments PASSED [ 20%] 1335s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_untranslated_unchanged PASSED [ 20%] 1335s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_merging_blank PASSED [ 20%] 1335s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_gaia_plurals PASSED [ 20%] 1335s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_duplicates PASSED [ 20%] 1335s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_gwt_plurals PASSED [ 20%] 1335s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_help PASSED [ 20%] 1335s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_help PASSED [ 20%] 1336s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert PASSED [ 20%] 1336s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_quotes PASSED [ 20%] 1336s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment PASSED [ 20%] 1336s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment_dos_eol PASSED [ 20%] 1336s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_double_string PASSED [ 20%] 1336s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_popup PASSED [ 20%] 1336s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_discardable PASSED [ 20%] 1336s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_menuex PASSED [ 20%] 1336s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_newlines PASSED [ 20%] 1336s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_comment_after PASSED [ 20%] 1336s tests/translate/convert/test_po2rc.py::TestPO2RCCommand::test_convert_block_language PASSED [ 20%] 1336s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_simpleunit PASSED [ 20%] 1336s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_basic PASSED [ 20%] 1336s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_multiline PASSED [ 20%] 1336s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapednewlines PASSED [ 20%] 1336s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapedtabs PASSED [ 20%] 1336s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_escapedquotes PASSED [ 20%] 1336s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_exclusions PASSED [ 20%] 1336s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments PASSED [ 21%] 1336s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingcomment PASSED [ 21%] 1336s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingduplicatecomment PASSED [ 21%] 1336s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_automaticcomments_existingduplicatecommentwithwhitespace PASSED [ 21%] 1336s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments PASSED [ 21%] 1336s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments_existingcomment PASSED [ 21%] 1336s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_translatorcomments_existingduplicatecomment PASSED [ 21%] 1336s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments PASSED [ 21%] 1336s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments_existingduplicatecomment PASSED [ 21%] 1336s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_combocomments_existingcomment PASSED [ 21%] 1336s tests/translate/convert/test_po2resx.py::TestPO2RESX::test_existingcomments PASSED [ 21%] 1336s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_simpleunit PASSED [ 21%] 1336s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_basic PASSED [ 21%] 1336s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_multiline PASSED [ 21%] 1336s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapednewlines PASSED [ 21%] 1336s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapedtabs PASSED [ 21%] 1336s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_escapedquotes PASSED [ 21%] 1336s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_exclusions PASSED [ 21%] 1336s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments PASSED [ 21%] 1336s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingcomment PASSED [ 21%] 1336s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingduplicatecomment PASSED [ 21%] 1336s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_automaticcomments_existingduplicatecommentwithwhitespace PASSED [ 21%] 1336s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments PASSED [ 21%] 1336s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments_existingcomment PASSED [ 21%] 1336s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_translatorcomments_existingduplicatecomment PASSED [ 21%] 1336s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments PASSED [ 21%] 1336s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments_existingduplicatecomment PASSED [ 21%] 1336s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_combocomments_existingcomment PASSED [ 21%] 1336s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_existingcomments PASSED [ 21%] 1336s tests/translate/convert/test_po2resx.py::TestPO2RESXCommand::test_help PASSED [ 21%] 1336s tests/translate/convert/test_po2sub.py::TestPO2Sub::test_subrip PASSED [ 21%] 1336s tests/translate/convert/test_po2sub.py::TestPO2SubCommand::test_subrip PASSED [ 21%] 1336s tests/translate/convert/test_po2sub.py::TestPO2SubCommand::test_help PASSED [ 21%] 1336s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert_empty PASSED [ 22%] 1336s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert PASSED [ 22%] 1336s tests/translate/convert/test_po2tiki.py::TestPo2Tiki::test_convert_marked_untranslated PASSED [ 22%] 1336s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert_empty PASSED [ 22%] 1336s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert PASSED [ 22%] 1336s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_convert_marked_untranslated PASSED [ 22%] 1336s tests/translate/convert/test_po2tiki.py::TestPo2TikiCommand::test_help PASSED [ 22%] 1336s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_basic PASSED [ 22%] 1336s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_sourcelanguage PASSED [ 22%] 1336s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_targetlanguage PASSED [ 22%] 1336s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_multiline PASSED [ 22%] 1336s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapednewlines PASSED [ 22%] 1336s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapedtabs PASSED [ 22%] 1336s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_escapedquotes PASSED [ 22%] 1336s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_exclusions PASSED [ 22%] 1336s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_nonascii PASSED [ 22%] 1336s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_nonecomments PASSED [ 22%] 1336s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_otherscomments PASSED [ 22%] 1336s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_sourcecomments PASSED [ 22%] 1336s tests/translate/convert/test_po2tmx.py::TestPO2TMX::test_typecomments PASSED [ 22%] 1336s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_basic PASSED [ 22%] 1336s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_sourcelanguage PASSED [ 22%] 1336s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_targetlanguage PASSED [ 22%] 1336s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_multiline PASSED [ 22%] 1336s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapednewlines PASSED [ 22%] 1336s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapedtabs PASSED [ 22%] 1336s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_escapedquotes PASSED [ 22%] 1336s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_exclusions PASSED [ 22%] 1336s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_nonascii PASSED [ 22%] 1336s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_nonecomments PASSED [ 22%] 1336s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_otherscomments PASSED [ 22%] 1336s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_sourcecomments PASSED [ 22%] 1336s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_typecomments PASSED [ 22%] 1336s tests/translate/convert/test_po2tmx.py::TestPO2TMXCommand::test_help PASSED [ 22%] 1336s tests/translate/convert/test_po2ts.py::TestPO2TS::test_simpleunit PASSED [ 23%] 1336s tests/translate/convert/test_po2ts.py::TestPO2TS::test_simple_unicode_unit PASSED [ 23%] 1336s tests/translate/convert/test_po2ts.py::TestPO2TS::test_fullunit PASSED [ 23%] 1336s tests/translate/convert/test_po2ts.py::TestPO2TS::test_fuzzyunit PASSED [ 23%] 1336s tests/translate/convert/test_po2ts.py::TestPO2TS::test_obsolete PASSED [ 23%] 1336s tests/translate/convert/test_po2ts.py::TestPO2TS::test_duplicates PASSED [ 23%] 1336s tests/translate/convert/test_po2ts.py::TestPO2TS::test_linebreak PASSED [ 23%] 1336s tests/translate/convert/test_po2ts.py::TestPO2TS::test_linebreak_consecutive PASSED [ 23%] 1336s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_simpleunit PASSED [ 23%] 1336s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_simple_unicode_unit PASSED [ 23%] 1336s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_fullunit PASSED [ 23%] 1336s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_fuzzyunit PASSED [ 23%] 1336s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_obsolete PASSED [ 23%] 1336s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_duplicates PASSED [ 23%] 1336s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_linebreak PASSED [ 23%] 1336s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_linebreak_consecutive PASSED [ 23%] 1336s tests/translate/convert/test_po2ts.py::TestPO2TSCommand::test_help PASSED [ 23%] 1336s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_basic PASSED [ 23%] 1336s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_nonascii PASSED [ 23%] 1336s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_blank_handling PASSED [ 23%] 1336s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_fuzzy_handling PASSED [ 23%] 1336s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_obsolete_ignore PASSED [ 23%] 1336s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_header_ignore PASSED [ 23%] 1336s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_convert_completion_below_threshold PASSED [ 23%] 1336s tests/translate/convert/test_po2txt.py::TestPO2Txt::test_convert_completion_above_threshold PASSED [ 23%] 1336s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_basic PASSED [ 23%] 1336s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_nonascii PASSED [ 23%] 1336s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_blank_handling PASSED [ 23%] 1336s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_fuzzy_handling PASSED [ 23%] 1336s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_obsolete_ignore PASSED [ 23%] 1336s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_header_ignore PASSED [ 23%] 1336s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_convert_completion_below_threshold PASSED [ 23%] 1336s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_convert_completion_above_threshold PASSED [ 23%] 1336s tests/translate/convert/test_po2txt.py::TestPO2TxtCommand::test_help PASSED [ 24%] 1336s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_basic PASSED [ 24%] 1336s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_unicode PASSED [ 24%] 1336s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_ordering_serialize PASSED [ 24%] 1336s tests/translate/convert/test_po2web2py.py::TestPO2WEB2PY::test_markmin PASSED [ 24%] 1336s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_minimal PASSED [ 24%] 1336s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_basic PASSED [ 24%] 1336s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_multiline PASSED [ 24%] 1336s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapednewlines PASSED [ 24%] 1336s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapedtabs PASSED [ 24%] 1336s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_escapedquotes PASSED [ 24%] 1336s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_locationcomments PASSED [ 24%] 1336s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_othercomments PASSED [ 24%] 1336s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_automaticcomments PASSED [ 24%] 1336s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_header PASSED [ 24%] 1336s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_fuzzy PASSED [ 24%] 1336s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_germanic_plurals PASSED [ 24%] 1336s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_funny_plurals PASSED [ 24%] 1336s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_language_tags PASSED [ 24%] 1336s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_variables PASSED [ 24%] 1336s tests/translate/convert/test_po2xliff.py::TestPO2XLIFF::test_approved PASSED [ 24%] 1336s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_empty_PO PASSED [ 24%] 1336s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_no_templates PASSED [ 24%] 1336s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_simple_output PASSED [ 24%] 1336s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_simple PASSED [ 24%] 1336s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_translated PASSED [ 24%] 1336s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_no_fuzzy PASSED [ 24%] 1336s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_allow_fuzzy PASSED [ 24%] 1336s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_nested PASSED [ 24%] 1336s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_completion_below_threshold PASSED [ 24%] 1336s tests/translate/convert/test_po2yaml.py::TestPO2YAML::test_convert_completion_above_threshold PASSED [ 24%] 1336s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_empty_PO PASSED [ 24%] 1336s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_no_templates PASSED [ 24%] 1336s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_simple_output PASSED [ 25%] 1336s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_simple PASSED [ 25%] 1336s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_translated PASSED [ 25%] 1336s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_no_fuzzy PASSED [ 25%] 1336s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_allow_fuzzy PASSED [ 25%] 1336s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_nested PASSED [ 25%] 1336s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_completion_below_threshold PASSED [ 25%] 1336s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_convert_completion_above_threshold PASSED [ 25%] 1336s tests/translate/convert/test_po2yaml.py::TestPO2YAMLCommand::test_help PASSED [ 25%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_convertpot_blank PASSED [ 25%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_convertpot_blank_plurals PASSED [ 25%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_simple PASSED [ 25%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_messages_marked_fuzzy PASSED [ 25%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_plurals_with_fuzzy_matching PASSED [ 25%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_change XFAIL [ 25%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_change PASSED [ 25%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_and_whitespace_change PASSED [ 25%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_location_ambiguous_with_disambiguous PASSED [ 25%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_accelerator_changes XFAIL [ 25%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_lines_cut_differently XFAIL [ 25%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_automatic_comments_dont_duplicate PASSED [ 25%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_automatic_comments_new_overides_old PASSED [ 25%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_comments_with_blank_comment_lines PASSED [ 25%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_empty_commentlines PASSED [ 25%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgidcomments PASSED [ 25%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_with_msgidcomment PASSED [ 25%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_plurals PASSED [ 25%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_obsoleting_messages PASSED [ 25%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_not_obsoleting_empty_messages PASSED [ 25%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_new_before_obsolete PASSED [ 25%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_resurect_obsolete_messages PASSED [ 25%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_resurect_obsolete_messages_into_msgidcomment PASSED [ 25%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_header_initialisation PASSED [ 25%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_comments PASSED [ 25%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_typecomments PASSED [ 26%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgctxt PASSED [ 26%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgctxt_multiline PASSED [ 26%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgid_merge_on_location PASSED [ 26%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_msgid_merge_on_id PASSED [ 26%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_empty_msgid PASSED [ 26%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_migrate_msgidcomment_to_msgctxt PASSED [ 26%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_obsolete_msgctxt PASSED [ 26%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2PO::test_small_strings PASSED [ 26%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_convertpot_blank PASSED [ 26%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_convertpot_blank_plurals PASSED [ 26%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_simple PASSED [ 26%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_messages_marked_fuzzy PASSED [ 26%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_plurals_with_fuzzy_matching PASSED [ 26%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_change XFAIL [ 26%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_change PASSED [ 26%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_and_whitespace_change PASSED [ 26%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_location_ambiguous_with_disambiguous PASSED [ 26%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_accelerator_changes XFAIL [ 26%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_lines_cut_differently XFAIL [ 26%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_automatic_comments_dont_duplicate PASSED [ 26%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_automatic_comments_new_overides_old PASSED [ 26%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_comments_with_blank_comment_lines PASSED [ 26%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_empty_commentlines PASSED [ 26%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgidcomments PASSED [ 26%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_with_msgidcomment PASSED [ 26%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_plurals PASSED [ 26%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_obsoleting_messages PASSED [ 26%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_not_obsoleting_empty_messages PASSED [ 26%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_new_before_obsolete PASSED [ 26%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_resurect_obsolete_messages PASSED [ 26%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_resurect_obsolete_messages_into_msgidcomment PASSED [ 26%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_header_initialisation PASSED [ 26%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_comments PASSED [ 27%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_typecomments PASSED [ 27%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgctxt PASSED [ 27%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgctxt_multiline PASSED [ 27%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgid_merge_on_location PASSED [ 27%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_msgid_merge_on_id PASSED [ 27%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_empty_msgid PASSED [ 27%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_migrate_msgidcomment_to_msgctxt PASSED [ 27%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_obsolete_msgctxt PASSED [ 27%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_small_strings PASSED [ 27%] 1336s tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_help PASSED [ 27%] 1336s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_no_endlines_added PASSED [ 27%] 1336s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_uncomment_contributors PASSED [ 27%] 1336s tests/translate/convert/test_prop2mozfunny.py::TestPO2Prop::test_multiline_comment_newlines PASSED [ 27%] 1336s tests/translate/convert/test_prop2po.py::TestProp2PO::test_simpleentry PASSED [ 27%] 1336s tests/translate/convert/test_prop2po.py::TestProp2PO::test_convertprop PASSED [ 27%] 1336s tests/translate/convert/test_prop2po.py::TestProp2PO::test_no_value_entry PASSED [ 27%] 1336s tests/translate/convert/test_prop2po.py::TestProp2PO::test_no_separator_entry PASSED [ 27%] 1336s tests/translate/convert/test_prop2po.py::TestProp2PO::test_tab_at_end_of_string PASSED [ 27%] 1336s tests/translate/convert/test_prop2po.py::TestProp2PO::test_tab_at_start_of_value PASSED [ 27%] 1336s tests/translate/convert/test_prop2po.py::TestProp2PO::test_unicode PASSED [ 27%] 1336s tests/translate/convert/test_prop2po.py::TestProp2PO::test_multiline_escaping PASSED [ 27%] 1336s tests/translate/convert/test_prop2po.py::TestProp2PO::test_comments PASSED [ 27%] 1336s tests/translate/convert/test_prop2po.py::TestProp2PO::test_multiline_comments PASSED [ 27%] 1336s tests/translate/convert/test_prop2po.py::TestProp2PO::test_folding_accesskeys PASSED [ 27%] 1336s tests/translate/convert/test_prop2po.py::TestProp2PO::test_dont_translate PASSED [ 27%] 1336s tests/translate/convert/test_prop2po.py::TestProp2PO::test_emptyproperty PASSED [ 27%] 1336s tests/translate/convert/test_prop2po.py::TestProp2PO::test_emptyproperty_translated PASSED [ 27%] 1336s tests/translate/convert/test_prop2po.py::TestProp2PO::test_newlines_in_value PASSED [ 27%] 1336s tests/translate/convert/test_prop2po.py::TestProp2PO::test_header_comments PASSED [ 27%] 1336s tests/translate/convert/test_prop2po.py::TestProp2PO::test_unassociated_comment_order PASSED [ 27%] 1336s tests/translate/convert/test_prop2po.py::TestProp2PO::test_x_header PASSED [ 27%] 1336s tests/translate/convert/test_prop2po.py::TestProp2PO::test_gaia_plurals PASSED [ 27%] 1336s tests/translate/convert/test_prop2po.py::TestProp2PO::test_successive_gaia_plurals PASSED [ 27%] 1336s tests/translate/convert/test_prop2po.py::TestProp2PO::test_duplicate_keys PASSED [ 28%] 1336s tests/translate/convert/test_prop2po.py::TestProp2PO::test_gwt_plurals PASSED [ 28%] 1336s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_simpleentry PASSED [ 28%] 1336s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_convertprop PASSED [ 28%] 1336s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_no_value_entry PASSED [ 28%] 1336s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_no_separator_entry PASSED [ 28%] 1336s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_tab_at_end_of_string PASSED [ 28%] 1336s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_tab_at_start_of_value PASSED [ 28%] 1336s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_unicode PASSED [ 28%] 1336s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_multiline_escaping PASSED [ 28%] 1336s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_comments PASSED [ 28%] 1336s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_multiline_comments PASSED [ 28%] 1336s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_folding_accesskeys PASSED [ 28%] 1336s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_dont_translate PASSED [ 28%] 1336s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_emptyproperty PASSED [ 28%] 1336s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_emptyproperty_translated PASSED [ 28%] 1336s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_newlines_in_value PASSED [ 28%] 1336s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_header_comments PASSED [ 28%] 1336s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_unassociated_comment_order PASSED [ 28%] 1336s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_x_header PASSED [ 28%] 1336s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_gaia_plurals PASSED [ 28%] 1336s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_successive_gaia_plurals PASSED [ 28%] 1336s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_duplicate_keys PASSED [ 28%] 1336s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_gwt_plurals PASSED [ 28%] 1336s tests/translate/convert/test_prop2po.py::TestProp2POCommand::test_help PASSED [ 28%] 1336s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_help PASSED [ 28%] 1336s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert PASSED [ 28%] 1336s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf16 PASSED [ 28%] 1336s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong PASSED [ 28%] 1337s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf8 PASSED [ 28%] 1337s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_menuex PASSED [ 28%] 1337s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_simple PASSED [ 28%] 1337s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_multiple_units PASSED [ 28%] 1337s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_automaticcomments PASSED [ 29%] 1337s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_translatorcomments PASSED [ 29%] 1337s tests/translate/convert/test_resx2po.py::TestRESX2PO::test_locations PASSED [ 29%] 1337s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple PASSED [ 29%] 1337s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_multiple_units PASSED [ 29%] 1337s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_automaticcomments PASSED [ 29%] 1337s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_translatorcomments PASSED [ 29%] 1337s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_locations PASSED [ 29%] 1337s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_help PASSED [ 29%] 1337s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_pot PASSED [ 29%] 1337s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_po PASSED [ 29%] 1337s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_remove_duplicates PASSED [ 29%] 1337s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_convert_empty PASSED [ 29%] 1337s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_converttiki_defaults PASSED [ 29%] 1337s tests/translate/convert/test_tiki2po.py::TestTiki2Po::test_converttiki_includeunused PASSED [ 29%] 1337s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_convert_empty PASSED [ 29%] 1337s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_converttiki_defaults PASSED [ 29%] 1337s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_converttiki_includeunused PASSED [ 29%] 1337s tests/translate/convert/test_tiki2po.py::TestTiki2PoCommand::test_help PASSED [ 29%] 1337s tests/translate/convert/test_ts2po.py::TestTS2PO::test_blank PASSED [ 29%] 1337s tests/translate/convert/test_ts2po.py::TestTS2PO::test_basic PASSED [ 29%] 1337s tests/translate/convert/test_ts2po.py::TestTS2PO::test_unfinished PASSED [ 29%] 1337s tests/translate/convert/test_ts2po.py::TestTS2PO::test_multiline PASSED [ 29%] 1337s tests/translate/convert/test_ts2po.py::TestTS2PO::test_obsolete PASSED [ 29%] 1337s tests/translate/convert/test_ts2po.py::TestTS2PO::test_comment PASSED [ 29%] 1337s tests/translate/convert/test_ts2po.py::TestTS2PO::test_extracomment PASSED [ 29%] 1337s tests/translate/convert/test_ts2po.py::TestTS2PO::test_emptycontext PASSED [ 29%] 1337s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_blank PASSED [ 29%] 1337s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_basic PASSED [ 29%] 1337s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_unfinished PASSED [ 29%] 1337s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_multiline PASSED [ 29%] 1337s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_obsolete PASSED [ 29%] 1337s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_comment PASSED [ 29%] 1337s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_extracomment PASSED [ 30%] 1337s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_emptycontext PASSED [ 30%] 1337s tests/translate/convert/test_ts2po.py::TestTS2POCommand::test_help PASSED [ 30%] 1337s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_convert_empty PASSED [ 30%] 1337s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_keep_duplicates PASSED [ 30%] 1337s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_drop_duplicates PASSED [ 30%] 1337s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_simple PASSED [ 30%] 1337s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_multiple_units PASSED [ 30%] 1337s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_carriage_return PASSED [ 30%] 1337s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_merge PASSED [ 30%] 1337s tests/translate/convert/test_txt2po.py::TestTxt2PO::test_no_segmentation PASSED [ 30%] 1337s tests/translate/convert/test_txt2po.py::TestDoku2po::test_convert_empty PASSED [ 30%] 1337s tests/translate/convert/test_txt2po.py::TestDoku2po::test_keep_duplicates PASSED [ 30%] 1337s tests/translate/convert/test_txt2po.py::TestDoku2po::test_drop_duplicates PASSED [ 30%] 1337s tests/translate/convert/test_txt2po.py::TestDoku2po::test_basic PASSED [ 30%] 1337s tests/translate/convert/test_txt2po.py::TestDoku2po::test_bullet_list PASSED [ 30%] 1337s tests/translate/convert/test_txt2po.py::TestDoku2po::test_numbered_list PASSED [ 30%] 1337s tests/translate/convert/test_txt2po.py::TestDoku2po::test_spacing PASSED [ 30%] 1337s tests/translate/convert/test_txt2po.py::TestDoku2po::test_merge PASSED [ 30%] 1337s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_convert_empty PASSED [ 30%] 1337s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_keep_duplicates PASSED [ 30%] 1337s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_drop_duplicates PASSED [ 30%] 1337s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_simple PASSED [ 30%] 1337s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_multiple_units PASSED [ 30%] 1337s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_carriage_return PASSED [ 30%] 1337s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_merge PASSED [ 30%] 1337s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_no_segmentation PASSED [ 30%] 1337s tests/translate/convert/test_txt2po.py::TestTxt2POCommand::test_help PASSED [ 30%] 1337s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_basic PASSED [ 30%] 1337s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_unicode PASSED [ 30%] 1337s tests/translate/convert/test_web2py2po.py::TestWEB2PY2PO::test_markmin PASSED [ 30%] 1337s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_help PASSED [ 30%] 1337s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert PASSED [ 30%] 1337s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_minimal PASSED [ 30%] 1337s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_basic PASSED [ 31%] 1337s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_translatorcomments PASSED [ 31%] 1337s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_autocomment PASSED [ 31%] 1337s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_locations PASSED [ 31%] 1337s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_fuzzy PASSED [ 31%] 1337s tests/translate/convert/test_xliff2po.py::TestXLIFF2PO::test_plurals PASSED [ 31%] 1337s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_minimal PASSED [ 31%] 1337s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_basic PASSED [ 31%] 1337s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_translatorcomments PASSED [ 31%] 1337s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_autocomment PASSED [ 31%] 1337s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_locations PASSED [ 31%] 1337s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_fuzzy PASSED [ 31%] 1337s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_plurals PASSED [ 31%] 1337s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_help PASSED [ 31%] 1337s tests/translate/convert/test_xliff2po.py::TestBasicXLIFF2PO::test_simple_convert PASSED [ 31%] 1337s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_minimal PASSED [ 31%] 1337s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_basic PASSED [ 31%] 1337s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_translatorcomments PASSED [ 31%] 1337s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_autocomment PASSED [ 31%] 1337s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_locations PASSED [ 31%] 1337s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_fuzzy PASSED [ 31%] 1337s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_plurals PASSED [ 31%] 1337s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_help PASSED [ 31%] 1337s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_preserve_filename PASSED [ 31%] 1337s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_pot PASSED [ 31%] 1337s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_po PASSED [ 31%] 1337s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_remove_duplicates PASSED [ 31%] 1337s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_convert_empty_YAML PASSED [ 31%] 1337s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_simple_output PASSED [ 31%] 1337s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_simple PASSED [ 31%] 1337s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_nested PASSED [ 31%] 1337s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_no_duplicates XFAIL [ 31%] 1337s tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_convert_with_template PASSED [ 31%] 1337s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_convert_empty_YAML PASSED [ 32%] 1337s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_simple_output PASSED [ 32%] 1337s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_simple PASSED [ 32%] 1337s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_nested PASSED [ 32%] 1337s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_no_duplicates XFAIL [ 32%] 1337s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_convert_with_template PASSED [ 32%] 1337s tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_help PASSED [ 32%] 1337s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_empty_target PASSED [ 32%] 1337s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_ellipsis PASSED [ 32%] 1337s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_spacestart_spaceend PASSED [ 32%] 1337s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_start_capitals PASSED [ 32%] 1337s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_end_punc PASSED [ 32%] 1337s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_correct_combinations PASSED [ 32%] 1337s tests/translate/filters/test_autocorrect.py::TestAutocorrect::test_nothing_to_do PASSED [ 32%] 1337s tests/translate/filters/test_checks.py::test_defaults PASSED [ 32%] 1337s tests/translate/filters/test_checks.py::test_construct PASSED [ 32%] 1337s tests/translate/filters/test_checks.py::test_accelerator_markers PASSED [ 32%] 1337s tests/translate/filters/test_checks.py::test_messages PASSED [ 32%] 1337s tests/translate/filters/test_checks.py::test_accelerators PASSED [ 32%] 1337s tests/translate/filters/test_checks.py::test_acceleratedvariables XFAIL [ 32%] 1337s tests/translate/filters/test_checks.py::test_acronyms PASSED [ 32%] 1337s tests/translate/filters/test_checks.py::test_blank PASSED [ 32%] 1337s tests/translate/filters/test_checks.py::test_brackets PASSED [ 32%] 1337s tests/translate/filters/test_checks.py::test_compendiumconflicts PASSED [ 32%] 1337s tests/translate/filters/test_checks.py::test_doublequoting PASSED [ 32%] 1337s tests/translate/filters/test_checks.py::test_doublespacing PASSED [ 32%] 1337s tests/translate/filters/test_checks.py::test_doublewords PASSED [ 32%] 1337s tests/translate/filters/test_checks.py::test_endpunc PASSED [ 32%] 1337s tests/translate/filters/test_checks.py::test_endwhitespace PASSED [ 32%] 1337s tests/translate/filters/test_checks.py::test_escapes PASSED [ 32%] 1337s tests/translate/filters/test_checks.py::test_newlines PASSED [ 32%] 1337s tests/translate/filters/test_checks.py::test_tabs PASSED [ 32%] 1337s tests/translate/filters/test_checks.py::test_filepaths PASSED [ 32%] 1337s tests/translate/filters/test_checks.py::test_kdecomments PASSED [ 32%] 1337s tests/translate/filters/test_checks.py::test_long PASSED [ 33%] 1337s tests/translate/filters/test_checks.py::test_musttranslatewords XFAIL [ 33%] 1337s tests/translate/filters/test_checks.py::test_notranslatewords PASSED [ 33%] 1337s tests/translate/filters/test_checks.py::test_numbers PASSED [ 33%] 1337s tests/translate/filters/test_checks.py::test_persian_numbers PASSED [ 33%] 1337s tests/translate/filters/test_checks.py::test_bengali_numbers PASSED [ 33%] 1337s tests/translate/filters/test_checks.py::test_arabic_numbers PASSED [ 33%] 1337s tests/translate/filters/test_checks.py::test_assamese_numbers PASSED [ 33%] 1337s tests/translate/filters/test_checks.py::test_options PASSED [ 33%] 1337s tests/translate/filters/test_checks.py::test_printf PASSED [ 33%] 1337s tests/translate/filters/test_checks.py::test_pythonbraceformat PASSED [ 33%] 1337s tests/translate/filters/test_checks.py::test_puncspacing PASSED [ 33%] 1337s tests/translate/filters/test_checks.py::test_purepunc PASSED [ 33%] 1337s tests/translate/filters/test_checks.py::test_sentencecount PASSED [ 33%] 1337s tests/translate/filters/test_checks.py::test_short PASSED [ 33%] 1337s tests/translate/filters/test_checks.py::test_singlequoting PASSED [ 33%] 1337s tests/translate/filters/test_checks.py::test_vietnamese_singlequoting PASSED [ 33%] 1337s tests/translate/filters/test_checks.py::test_persian_single_and_double_quote_fail_at_the_same_time XFAIL [ 33%] 1337s tests/translate/filters/test_checks.py::test_persian_quoting PASSED [ 33%] 1337s tests/translate/filters/test_checks.py::test_simplecaps PASSED [ 33%] 1337s tests/translate/filters/test_checks.py::test_spellcheck SKIPPED (Spe...) [ 33%] 1337s tests/translate/filters/test_checks.py::test_startcaps PASSED [ 33%] 1337s tests/translate/filters/test_checks.py::test_startpunc PASSED [ 33%] 1337s tests/translate/filters/test_checks.py::test_startwhitespace PASSED [ 33%] 1337s tests/translate/filters/test_checks.py::test_unchanged PASSED [ 33%] 1337s tests/translate/filters/test_checks.py::test_untranslated PASSED [ 33%] 1337s tests/translate/filters/test_checks.py::test_validchars PASSED [ 33%] 1337s tests/translate/filters/test_checks.py::test_minimalchecker PASSED [ 33%] 1337s tests/translate/filters/test_checks.py::test_reducedchecker PASSED [ 33%] 1337s tests/translate/filters/test_checks.py::test_variables_kde PASSED [ 33%] 1337s tests/translate/filters/test_checks.py::test_variables_gnome PASSED [ 33%] 1337s tests/translate/filters/test_checks.py::test_variables_mozilla PASSED [ 33%] 1337s tests/translate/filters/test_checks.py::test_variables_openoffice PASSED [ 33%] 1337s tests/translate/filters/test_checks.py::test_variables_cclicense PASSED [ 34%] 1337s tests/translate/filters/test_checks.py::test_variables_ios PASSED [ 34%] 1337s tests/translate/filters/test_checks.py::test_xmltags PASSED [ 34%] 1337s tests/translate/filters/test_checks.py::test_bengali_mozilla_inverted_xmltags XFAIL [ 34%] 1337s tests/translate/filters/test_checks.py::test_ooxmltags PASSED [ 34%] 1337s tests/translate/filters/test_checks.py::test_functions PASSED [ 34%] 1337s tests/translate/filters/test_checks.py::test_emails PASSED [ 34%] 1337s tests/translate/filters/test_checks.py::test_urls PASSED [ 34%] 1337s tests/translate/filters/test_checks.py::test_simpleplurals PASSED [ 34%] 1337s tests/translate/filters/test_checks.py::test_nplurals PASSED [ 34%] 1337s tests/translate/filters/test_checks.py::test_credits PASSED [ 34%] 1337s tests/translate/filters/test_checks.py::test_gconf PASSED [ 34%] 1337s tests/translate/filters/test_checks.py::test_validxml PASSED [ 34%] 1337s tests/translate/filters/test_checks.py::test_hassuggestion PASSED [ 34%] 1337s tests/translate/filters/test_checks.py::test_dialogsizes PASSED [ 34%] 1337s tests/translate/filters/test_checks.py::test_skip_checks_per_language_in_some_checkers PASSED [ 34%] 1337s tests/translate/filters/test_checks.py::test_mozilla_no_accelerators_for_indic PASSED [ 34%] 1337s tests/translate/filters/test_checks.py::test_noaccelerators_only_in_mozilla_checker PASSED [ 34%] 1337s tests/translate/filters/test_checks.py::test_ensure_accelerators_not_in_target_if_not_in_source PASSED [ 34%] 1337s tests/translate/filters/test_checks.py::test_ensure_bengali_languages_script_is_correct PASSED [ 34%] 1337s tests/translate/filters/test_checks.py::test_category PASSED [ 34%] 1337s tests/translate/filters/test_decoration.py::test_spacestart PASSED [ 34%] 1337s tests/translate/filters/test_decoration.py::test_isvalidaccelerator PASSED [ 34%] 1337s tests/translate/filters/test_decoration.py::test_find_marked_variables PASSED [ 34%] 1337s tests/translate/filters/test_decoration.py::test_getnumbers PASSED [ 34%] 1337s tests/translate/filters/test_decoration.py::test_getfunctions PASSED [ 34%] 1337s tests/translate/filters/test_pofilter.py::TestPOFilter::test_simplepass PASSED [ 34%] 1337s tests/translate/filters/test_pofilter.py::TestPOFilter::test_simplefail PASSED [ 34%] 1337s tests/translate/filters/test_pofilter.py::TestPOFilter::test_variables_across_lines PASSED [ 34%] 1337s tests/translate/filters/test_pofilter.py::TestPOFilter::test_ignore_if_already_marked PASSED [ 34%] 1337s tests/translate/filters/test_pofilter.py::TestPOFilter::test_non_existant_check PASSED [ 34%] 1337s tests/translate/filters/test_pofilter.py::TestPOFilter::test_list_all_tests PASSED [ 34%] 1337s tests/translate/filters/test_pofilter.py::TestPOFilter::test_test_against_fuzzy PASSED [ 34%] 1337s tests/translate/filters/test_pofilter.py::TestPOFilter::test_test_against_review PASSED [ 35%] 1337s tests/translate/filters/test_pofilter.py::TestPOFilter::test_isfuzzy PASSED [ 35%] 1337s tests/translate/filters/test_pofilter.py::TestPOFilter::test_isreview PASSED [ 35%] 1337s tests/translate/filters/test_pofilter.py::TestPOFilter::test_notes PASSED [ 35%] 1337s tests/translate/filters/test_pofilter.py::TestPOFilter::test_unicode PASSED [ 35%] 1337s tests/translate/filters/test_pofilter.py::TestPOFilter::test_preconditions PASSED [ 35%] 1337s tests/translate/filters/test_pofilter.py::TestPOFilter::test_msgid_comments PASSED [ 35%] 1337s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_simplepass PASSED [ 35%] 1337s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_simplefail PASSED [ 35%] 1337s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_variables_across_lines PASSED [ 35%] 1337s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_ignore_if_already_marked PASSED [ 35%] 1337s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_non_existant_check PASSED [ 35%] 1337s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_list_all_tests PASSED [ 35%] 1337s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_test_against_fuzzy PASSED [ 35%] 1337s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_test_against_review PASSED [ 35%] 1337s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_isfuzzy PASSED [ 35%] 1337s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_isreview PASSED [ 35%] 1337s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_notes PASSED [ 35%] 1337s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_unicode PASSED [ 35%] 1337s tests/translate/filters/test_pofilter.py::TestXliffFilter::test_preconditions PASSED [ 35%] 1337s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_simplepass PASSED [ 35%] 1337s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_simplefail PASSED [ 35%] 1337s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_variables_across_lines PASSED [ 35%] 1337s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_ignore_if_already_marked PASSED [ 35%] 1337s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_non_existant_check PASSED [ 35%] 1337s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_list_all_tests PASSED [ 35%] 1337s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_notes PASSED [ 35%] 1337s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_unicode PASSED [ 35%] 1337s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_preconditions PASSED [ 35%] 1337s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_test_against_fuzzy PASSED [ 35%] 1337s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_test_against_review PASSED [ 35%] 1337s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_isfuzzy PASSED [ 35%] 1337s tests/translate/filters/test_pofilter.py::TestTMXFilter::test_isreview PASSED [ 35%] 1337s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_simplepass PASSED [ 35%] 1337s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_simplefail PASSED [ 36%] 1337s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_variables_across_lines PASSED [ 36%] 1337s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_ignore_if_already_marked PASSED [ 36%] 1337s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_non_existant_check PASSED [ 36%] 1337s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_list_all_tests PASSED [ 36%] 1337s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_test_against_fuzzy PASSED [ 36%] 1337s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_test_against_review PASSED [ 36%] 1337s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_isfuzzy PASSED [ 36%] 1337s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_isreview PASSED [ 36%] 1337s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_notes PASSED [ 36%] 1337s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_unicode PASSED [ 36%] 1337s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_preconditions PASSED [ 36%] 1337s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_msgid_comments PASSED [ 36%] 1337s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_cedillas PASSED [ 36%] 1337s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_niciun PASSED [ 36%] 1337s tests/translate/filters/test_pofilter.py::TestRomanianPOFilter::test_romanian_nicio PASSED [ 36%] 1337s tests/translate/filters/test_prefilters.py::test_removekdecomments PASSED [ 36%] 1337s tests/translate/filters/test_prefilters.py::test_filterwordswithpunctuation PASSED [ 36%] 1337s tests/translate/lang/test_af.py::test_sentences PASSED [ 36%] 1337s tests/translate/lang/test_af.py::test_capsstart PASSED [ 36%] 1337s tests/translate/lang/test_af.py::test_transliterate_cyrillic PASSED [ 36%] 1337s tests/translate/lang/test_am.py::test_punctranslate PASSED [ 36%] 1337s tests/translate/lang/test_am.py::test_sentences PASSED [ 36%] 1337s tests/translate/lang/test_ar.py::test_punctranslate PASSED [ 36%] 1337s tests/translate/lang/test_ar.py::test_sentences PASSED [ 36%] 1337s tests/translate/lang/test_common.py::test_characters PASSED [ 36%] 1337s tests/translate/lang/test_common.py::test_words PASSED [ 36%] 1337s tests/translate/lang/test_common.py::test_word_khmer XFAIL (ZWS is n...) [ 36%] 1337s tests/translate/lang/test_common.py::test_sentences PASSED [ 36%] 1337s tests/translate/lang/test_common.py::test_capsstart PASSED [ 36%] 1337s tests/translate/lang/test_common.py::test_numstart PASSED [ 36%] 1337s tests/translate/lang/test_common.py::test_punctranslate PASSED [ 36%] 1337s tests/translate/lang/test_common.py::test_length_difference PASSED [ 36%] 1337s tests/translate/lang/test_common.py::test_alter_length PASSED [ 37%] 1337s tests/translate/lang/test_data.py::test_normalise_code PASSED [ 37%] 1337s tests/translate/lang/test_data.py::test_simplify_to_common PASSED [ 37%] 1337s tests/translate/lang/test_el.py::test_punctranslate PASSED [ 37%] 1337s tests/translate/lang/test_el.py::test_sentences PASSED [ 37%] 1337s tests/translate/lang/test_es.py::test_punctranslate PASSED [ 37%] 1337s tests/translate/lang/test_es.py::test_sentences PASSED [ 37%] 1337s tests/translate/lang/test_fa.py::test_punctranslate PASSED [ 37%] 1337s tests/translate/lang/test_fa.py::test_sentences PASSED [ 37%] 1337s tests/translate/lang/test_factory.py::test_getlanguage PASSED [ 37%] 1337s tests/translate/lang/test_factory.py::test_get_all_languages PASSED [ 37%] 1337s tests/translate/lang/test_fr.py::test_punctranslate PASSED [ 37%] 1337s tests/translate/lang/test_fr.py::test_sentences PASSED [ 37%] 1337s tests/translate/lang/test_hy.py::test_punctranslate PASSED [ 37%] 1337s tests/translate/lang/test_hy.py::test_sentences PASSED [ 37%] 1337s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_identify_lang PASSED [ 37%] 1337s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_identify_store PASSED [ 37%] 1338s tests/translate/lang/test_identify.py::TestLanguageIdentifier::test_bad_init_data PASSED [ 37%] 1338s tests/translate/lang/test_ja.py::test_punctranslate PASSED [ 37%] 1338s tests/translate/lang/test_ja.py::test_sentences PASSED [ 37%] 1338s tests/translate/lang/test_km.py::test_punctranslate PASSED [ 37%] 1338s tests/translate/lang/test_km.py::test_sentences PASSED [ 37%] 1338s tests/translate/lang/test_ko.py::test_punctranslate PASSED [ 37%] 1338s tests/translate/lang/test_ko.py::test_sentences PASSED [ 37%] 1338s tests/translate/lang/test_ne.py::test_punctranslate PASSED [ 37%] 1338s tests/translate/lang/test_ne.py::test_sentences PASSED [ 37%] 1338s tests/translate/lang/test_nqo.py::test_punctranslate PASSED [ 37%] 1338s tests/translate/lang/test_nqo.py::test_sentences PASSED [ 37%] 1338s tests/translate/lang/test_or.py::test_punctranslate PASSED [ 37%] 1338s tests/translate/lang/test_or.py::test_country_code PASSED [ 37%] 1338s tests/translate/lang/test_or.py::test_sentences PASSED [ 37%] 1338s tests/translate/lang/test_poedit.py::test_isocode PASSED [ 37%] 1338s tests/translate/lang/test_ro.py::test_cedillas PASSED [ 37%] 1338s tests/translate/lang/test_ro.py::test_niciun PASSED [ 37%] 1338s tests/translate/lang/test_scn.py::test_italianisms PASSED [ 38%] 1338s tests/translate/lang/test_scn.py::test_vocalism PASSED [ 38%] 1338s tests/translate/lang/test_scn.py::test_suffixes PASSED [ 38%] 1338s tests/translate/lang/test_team.py::test_simple PASSED [ 38%] 1338s tests/translate/lang/test_th.py::test_punctranslate PASSED [ 38%] 1338s tests/translate/lang/test_th.py::test_sentences PASSED [ 38%] 1338s tests/translate/lang/test_tr.py::test_sentences PASSED [ 38%] 1338s tests/translate/lang/test_uk.py::test_sentences PASSED [ 38%] 1338s tests/translate/lang/test_vi.py::test_punctranslate PASSED [ 38%] 1338s tests/translate/lang/test_vi.py::test_sentences PASSED [ 38%] 1338s tests/translate/lang/test_zh.py::test_punctranslate PASSED [ 38%] 1338s tests/translate/lang/test_zh.py::test_sentences PASSED [ 38%] 1338s tests/translate/misc/test_deprecation.py::TestDeprecation::test_deprecated_decorator PASSED [ 38%] 1338s tests/translate/misc/test_deprecation.py::TestDeprecation::test_no_deprecated_decorator PASSED [ 38%] 1338s tests/translate/misc/test_dictutils.py::test_cidict_has_key PASSED [ 38%] 1338s tests/translate/misc/test_multistring.py::TestMultistring::test_constructor PASSED [ 38%] 1338s tests/translate/misc/test_multistring.py::TestMultistring::test_repr PASSED [ 38%] 1338s tests/translate/misc/test_multistring.py::TestMultistring::test_replace PASSED [ 38%] 1338s tests/translate/misc/test_multistring.py::TestMultistring::test_comparison PASSED [ 38%] 1338s tests/translate/misc/test_multistring.py::TestMultistring::test_coercion PASSED [ 38%] 1338s tests/translate/misc/test_multistring.py::TestMultistring::test_unicode_coercion PASSED [ 38%] 1338s tests/translate/misc/test_multistring.py::TestMultistring::test_list_coercion PASSED [ 38%] 1338s tests/translate/misc/test_multistring.py::TestMultistring::test_multistring_hash PASSED [ 38%] 1338s tests/translate/misc/test_optrecurse.py::TestRecursiveOptionParser::test_splitext PASSED [ 38%] 1338s tests/translate/misc/test_optrecurse.py::TestRecursiveOptionParser::test_outputfile_receives_bytes PASSED [ 38%] 1338s tests/translate/misc/test_progressbar.py::test_hashprogressbar PASSED [ 38%] 1338s tests/translate/misc/test_quote.py::test_find_all PASSED [ 38%] 1338s tests/translate/misc/test_quote.py::test_extract PASSED [ 38%] 1338s tests/translate/misc/test_quote.py::test_extractwithoutquotes PASSED [ 38%] 1338s tests/translate/misc/test_quote.py::test_extractwithoutquotes_passfunc PASSED [ 38%] 1338s tests/translate/misc/test_quote.py::test_stripcomment PASSED [ 38%] 1338s tests/translate/misc/test_quote.py::TestEncoding::test_javapropertiesencode PASSED [ 38%] 1338s tests/translate/misc/test_quote.py::TestEncoding::test_java_utf8_properties_encode PASSED [ 38%] 1338s tests/translate/misc/test_quote.py::TestEncoding::test_escapespace PASSED [ 39%] 1338s tests/translate/misc/test_quote.py::TestEncoding::test_mozillaescapemarginspaces PASSED [ 39%] 1338s tests/translate/misc/test_quote.py::TestEncoding::test_mozilla_control_escapes PASSED [ 39%] 1338s tests/translate/misc/test_quote.py::TestEncoding::test_propertiesdecode PASSED [ 39%] 1338s tests/translate/misc/test_quote.py::TestEncoding::test_controlchars PASSED [ 39%] 1338s tests/translate/misc/test_quote.py::TestEncoding::test_properties_decode_slashu PASSED [ 39%] 1338s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding PASSED [ 39%] 1338s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_existing_entities PASSED [ 39%] 1338s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_passthrough PASSED [ 39%] 1338s tests/translate/misc/test_quote.py::TestEncoding::test_htmlencoding_nonentities PASSED [ 39%] 1338s tests/translate/misc/test_xml_helpers.py::TestReindent::test_indent_four_spaces PASSED [ 39%] 1338s tests/translate/misc/test_xml_helpers.py::TestReindent::test_indent_tab PASSED [ 39%] 1338s tests/translate/search/test_lshtein.py::TestLevenshtein::test_basic_distance PASSED [ 39%] 1338s tests/translate/search/test_lshtein.py::TestLevenshtein::test_basic_similarity PASSED [ 39%] 1338s tests/translate/search/test_lshtein.py::TestLevenshtein::test_long_similarity PASSED [ 39%] 1338s tests/translate/search/test_match.py::TestMatch::test_matching PASSED [ 39%] 1338s tests/translate/search/test_match.py::TestMatch::test_multiple_store PASSED [ 39%] 1338s tests/translate/search/test_match.py::TestMatch::test_extendtm PASSED [ 39%] 1338s tests/translate/search/test_match.py::TestMatch::test_terminology PASSED [ 39%] 1338s tests/translate/search/test_match.py::TestMatch::test_brackets PASSED [ 39%] 1338s tests/translate/search/test_match.py::TestMatch::test_past_tences PASSED [ 39%] 1338s tests/translate/search/test_match.py::TestMatch::test_space_mismatch PASSED [ 39%] 1338s tests/translate/search/test_match.py::TestMatch::test_hyphen_mismatch PASSED [ 39%] 1338s tests/translate/search/test_terminology.py::TestTerminology::test_basic PASSED [ 39%] 1338s tests/translate/services/test_tmserver.py::TestTMServer::test_import PASSED [ 39%] 1338s tests/translate/services/test_tmserver.py::TestTMServer::test_server PASSED [ 39%] 1338s tests/translate/storage/placeables/test_base.py::TestStringElem::test_parse PASSED [ 39%] 1338s tests/translate/storage/placeables/test_base.py::TestStringElem::test_tree PASSED [ 39%] 1338s tests/translate/storage/placeables/test_base.py::TestStringElem::test_add PASSED [ 39%] 1338s tests/translate/storage/placeables/test_base.py::TestStringElem::test_contains PASSED [ 39%] 1338s tests/translate/storage/placeables/test_base.py::TestStringElem::test_getitem PASSED [ 39%] 1338s tests/translate/storage/placeables/test_base.py::TestStringElem::test_getslice PASSED [ 39%] 1338s tests/translate/storage/placeables/test_base.py::TestStringElem::test_iter PASSED [ 39%] 1338s tests/translate/storage/placeables/test_base.py::TestStringElem::test_len PASSED [ 40%] 1338s tests/translate/storage/placeables/test_base.py::TestStringElem::test_mul PASSED [ 40%] 1338s tests/translate/storage/placeables/test_base.py::TestStringElem::test_elem_offset PASSED [ 40%] 1338s tests/translate/storage/placeables/test_base.py::TestStringElem::test_elem_at_offset PASSED [ 40%] 1338s tests/translate/storage/placeables/test_base.py::TestStringElem::test_find PASSED [ 40%] 1338s tests/translate/storage/placeables/test_base.py::TestStringElem::test_find_elems_with PASSED [ 40%] 1338s tests/translate/storage/placeables/test_base.py::TestStringElem::test_flatten PASSED [ 40%] 1338s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case1 PASSED [ 40%] 1338s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case2 PASSED [ 40%] 1338s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case3 PASSED [ 40%] 1338s tests/translate/storage/placeables/test_base.py::TestStringElem::test_delete_range_case4 PASSED [ 40%] 1338s tests/translate/storage/placeables/test_base.py::TestStringElem::test_insert PASSED [ 40%] 1338s tests/translate/storage/placeables/test_base.py::TestStringElem::test_isleaf PASSED [ 40%] 1338s tests/translate/storage/placeables/test_base.py::TestStringElem::test_prune PASSED [ 40%] 1338s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_base_placeables PASSED [ 40%] 1338s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_general_placeables XFAIL [ 40%] 1338s tests/translate/storage/placeables/test_base.py::TestConverters::test_to_xliff_placeables XFAIL [ 40%] 1338s tests/translate/storage/placeables/test_general.py::test_placeable_numbers PASSED [ 40%] 1338s tests/translate/storage/placeables/test_general.py::test_placeable_newline PASSED [ 40%] 1338s tests/translate/storage/placeables/test_general.py::test_placeable_alt_attr PASSED [ 40%] 1338s tests/translate/storage/placeables/test_general.py::test_placeable_qt_formatting PASSED [ 40%] 1338s tests/translate/storage/placeables/test_general.py::test_placeable_camelcase PASSED [ 40%] 1338s tests/translate/storage/placeables/test_general.py::test_placeable_space PASSED [ 40%] 1338s tests/translate/storage/placeables/test_general.py::test_placeable_punctuation PASSED [ 40%] 1338s tests/translate/storage/placeables/test_general.py::test_placeable_xml_entity PASSED [ 40%] 1338s tests/translate/storage/placeables/test_general.py::test_placeable_xml_tag PASSED [ 40%] 1338s tests/translate/storage/placeables/test_general.py::test_placeable_option PASSED [ 40%] 1338s tests/translate/storage/placeables/test_general.py::test_placeable_file PASSED [ 40%] 1338s tests/translate/storage/placeables/test_general.py::test_placeable_email PASSED [ 40%] 1338s tests/translate/storage/placeables/test_general.py::test_placeable_caps PASSED [ 40%] 1338s tests/translate/storage/placeables/test_general.py::test_placeable_formatting PASSED [ 40%] 1338s tests/translate/storage/placeables/test_general.py::test_placeable_doubleat PASSED [ 40%] 1338s tests/translate/storage/placeables/test_general.py::test_placeable_brace PASSED [ 40%] 1338s tests/translate/storage/placeables/test_general.py::test_python_placeable PASSED [ 40%] 1338s tests/translate/storage/placeables/test_lisa.py::test_xml_to_strelem PASSED [ 41%] 1338s tests/translate/storage/placeables/test_lisa.py::test_xml_space PASSED [ 41%] 1338s tests/translate/storage/placeables/test_lisa.py::test_chunk_list PASSED [ 41%] 1338s tests/translate/storage/placeables/test_lisa.py::test_set_strelem_to_xml PASSED [ 41%] 1338s tests/translate/storage/placeables/test_lisa.py::test_unknown_xml_placeable PASSED [ 41%] 1338s tests/translate/storage/placeables/test_terminology.py::TestTerminologyPlaceable::test_simple_terminology PASSED [ 41%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_isfuzzy PASSED [ 41%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_create PASSED [ 41%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_eq PASSED [ 41%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escapes PASSED [ 41%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_difficult_escapes PASSED [ 41%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_note_sanity PASSED [ 41%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_target PASSED [ 41%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_rich_get PASSED [ 41%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_rich_set PASSED [ 41%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_message_with_newline PASSED [ 41%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quotes_with_newline PASSED [ 41%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_message_with_newline_in_xml PASSED [ 41%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_twitter PASSED [ 41%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quote PASSED [ 41%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_question PASSED [ 41%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_double_space PASSED [ 41%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_leading_space PASSED [ 41%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_tailing_space PASSED [ 41%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_xml_entities PASSED [ 41%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code PASSED [ 41%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code_quote PASSED [ 41%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_code_quote_newline PASSED [ 41%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_arrows PASSED [ 41%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_link PASSED [ 41%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_link_and_text PASSED [ 41%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_blank_string PASSED [ 41%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_escape_message_with_newline PASSED [ 41%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_invalid_lang PASSED [ 42%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_quote PASSED [ 42%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_leading_space PASSED [ 42%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_trailing_space PASSED [ 42%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_with_ampersand PASSED [ 42%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_double_space PASSED [ 42%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_html_deep_double_space PASSED [ 42%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_complex_xml PASSED [ 42%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_escape_quoted_newlines PASSED [ 42%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_message_with_newline PASSED [ 42%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_message_with_newline_in_xml PASSED [ 42%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_twitter PASSED [ 42%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_question PASSED [ 42%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quote PASSED [ 42%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_double_space PASSED [ 42%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_space PASSED [ 42%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_quoted_newlines PASSED [ 42%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_xml_entities PASSED [ 42%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_code PASSED [ 42%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_arrows PASSED [ 42%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_link PASSED [ 42%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_link_and_text PASSED [ 42%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_blank_string PASSED [ 42%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_space PASSED [ 42%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_spaces PASSED [ 42%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_leading_spaces PASSED [ 42%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_trailing_newline PASSED [ 42%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_many_quotes PASSED [ 42%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_blank_string_again PASSED [ 42%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_double_quotes_string PASSED [ 42%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_newline_in_string PASSED [ 42%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_not_translatable_string PASSED [ 42%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_parse_message_with_newline PASSED [ 42%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_plural_parse_message_with_comments PASSED [ 42%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_quote PASSED [ 43%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_leading_space PASSED [ 43%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_leading_space_quoted PASSED [ 43%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_trailing_space PASSED [ 43%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_trailing_space_quoted PASSED [ 43%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_with_ampersand PASSED [ 43%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_double_space_quoted PASSED [ 43%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_html_deep_double_space_quoted PASSED [ 43%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_complex_xml PASSED [ 43%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_parse_unicode PASSED [ 43%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_unescaped PASSED [ 43%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_escaped_alone PASSED [ 43%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceUnit::test_single_escaped_full PASSED [ 43%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_create_blank PASSED [ 43%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_add PASSED [ 43%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_remove PASSED [ 43%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_find PASSED [ 43%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_parse PASSED [ 43%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_files PASSED [ 43%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_save PASSED [ 43%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_extensions PASSED [ 43%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_mimetypes PASSED [ 43%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_translate PASSED [ 43%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup PASSED [ 43%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_nonascii PASSED [ 43%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_default_handlings PASSED [ 43%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_filename PASSED [ 43%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_filename_default_language PASSED [ 43%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_targetlanguage_auto_detection_invalid_filename PASSED [ 43%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_namespaces PASSED [ 43%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_serialize PASSED [ 43%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_add_formatting PASSED [ 43%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity PASSED [ 43%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_invalid_entity PASSED [ 44%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_indent PASSED [ 44%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_markup PASSED [ 44%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity_add PASSED [ 44%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_entity_add_noedit PASSED [ 44%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_remove PASSED [ 44%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_set PASSED [ 44%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_others PASSED [ 44%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_markup_quotes_set PASSED [ 44%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_xliff_g PASSED [ 44%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_xliff_namespace PASSED [ 44%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_zh_hk PASSED [ 44%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_edit_plural_b_zh_hk PASSED [ 44%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_missing_plural PASSED [ 44%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_removeunit PASSED [ 44%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_cdata PASSED [ 44%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_prefix PASSED [ 44%] 1338s tests/translate/storage/test_aresource.py::TestAndroidResourceFile::test_rtl PASSED [ 44%] 1338s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_isfuzzy PASSED [ 44%] 1338s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_create PASSED [ 44%] 1338s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_eq PASSED [ 44%] 1338s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_escapes PASSED [ 44%] 1338s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_difficult_escapes PASSED [ 44%] 1338s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_note_sanity PASSED [ 44%] 1338s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_target PASSED [ 44%] 1338s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_rich_get PASSED [ 44%] 1338s tests/translate/storage/test_aresource.py::TestMOKOResourceUnit::test_rich_set PASSED [ 44%] 1338s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_create_blank PASSED [ 44%] 1338s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_add PASSED [ 44%] 1338s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_remove PASSED [ 44%] 1338s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_find PASSED [ 44%] 1338s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_parse PASSED [ 44%] 1338s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_files PASSED [ 44%] 1338s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_save PASSED [ 45%] 1338s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_extensions PASSED [ 45%] 1338s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_mimetypes PASSED [ 45%] 1338s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_translate PASSED [ 45%] 1338s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_markup PASSED [ 45%] 1338s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_nonascii PASSED [ 45%] 1338s tests/translate/storage/test_aresource.py::TestMOKOResourceFile::test_plural PASSED [ 45%] 1338s tests/translate/storage/test_base.py::TestTranslationUnit::test_isfuzzy PASSED [ 45%] 1338s tests/translate/storage/test_base.py::TestTranslationUnit::test_create PASSED [ 45%] 1338s tests/translate/storage/test_base.py::TestTranslationUnit::test_eq PASSED [ 45%] 1338s tests/translate/storage/test_base.py::TestTranslationUnit::test_target PASSED [ 45%] 1338s tests/translate/storage/test_base.py::TestTranslationUnit::test_escapes PASSED [ 45%] 1338s tests/translate/storage/test_base.py::TestTranslationUnit::test_difficult_escapes PASSED [ 45%] 1338s tests/translate/storage/test_base.py::TestTranslationUnit::test_note_sanity PASSED [ 45%] 1338s tests/translate/storage/test_base.py::TestTranslationUnit::test_rich_get PASSED [ 45%] 1338s tests/translate/storage/test_base.py::TestTranslationUnit::test_rich_set PASSED [ 45%] 1338s tests/translate/storage/test_base.py::TestTranslationStore::test_create_blank PASSED [ 45%] 1338s tests/translate/storage/test_base.py::TestTranslationStore::test_add PASSED [ 45%] 1338s tests/translate/storage/test_base.py::TestTranslationStore::test_remove PASSED [ 45%] 1338s tests/translate/storage/test_base.py::TestTranslationStore::test_find PASSED [ 45%] 1338s tests/translate/storage/test_base.py::TestTranslationStore::test_translate PASSED [ 45%] 1338s tests/translate/storage/test_base.py::TestTranslationStore::test_parse PASSED [ 45%] 1338s tests/translate/storage/test_base.py::TestTranslationStore::test_files PASSED [ 45%] 1338s tests/translate/storage/test_base.py::TestTranslationStore::test_save PASSED [ 45%] 1338s tests/translate/storage/test_base.py::TestTranslationStore::test_markup PASSED [ 45%] 1338s tests/translate/storage/test_base.py::TestTranslationStore::test_nonascii PASSED [ 45%] 1338s tests/translate/storage/test_base.py::TestTranslationStore::test_extensions PASSED [ 45%] 1338s tests/translate/storage/test_base.py::TestTranslationStore::test_mimetypes PASSED [ 45%] 1338s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_isfuzzy PASSED [ 45%] 1338s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_create PASSED [ 45%] 1338s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_eq PASSED [ 45%] 1338s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_target PASSED [ 45%] 1338s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_escapes PASSED [ 45%] 1338s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_rich_get PASSED [ 45%] 1338s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_rich_set PASSED [ 46%] 1338s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_difficult_escapes PASSED [ 46%] 1338s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_newlines PASSED [ 46%] 1338s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_istranslated PASSED [ 46%] 1338s tests/translate/storage/test_catkeys.py::TestCatkeysUnit::test_note_sanity PASSED [ 46%] 1338s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_create_blank PASSED [ 46%] 1338s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_add PASSED [ 46%] 1338s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_remove PASSED [ 46%] 1338s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_find PASSED [ 46%] 1338s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_translate PASSED [ 46%] 1338s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_parse PASSED [ 46%] 1338s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_files PASSED [ 46%] 1338s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_save PASSED [ 46%] 1338s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_markup PASSED [ 46%] 1338s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_nonascii PASSED [ 46%] 1338s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_extensions PASSED [ 46%] 1338s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_mimetypes PASSED [ 46%] 1338s tests/translate/storage/test_catkeys.py::TestCatkeysFile::test_checksum PASSED [ 46%] 1338s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_isfuzzy PASSED [ 46%] 1338s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_create PASSED [ 46%] 1338s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_eq PASSED [ 46%] 1338s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_target PASSED [ 46%] 1338s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_escapes PASSED [ 46%] 1338s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_difficult_escapes PASSED [ 46%] 1338s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_note_sanity PASSED [ 46%] 1338s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_rich_get PASSED [ 46%] 1338s tests/translate/storage/test_csvl10n.py::TestCSVUnit::test_rich_set PASSED [ 46%] 1338s tests/translate/storage/test_csvl10n.py::TestCSV::test_create_blank PASSED [ 46%] 1338s tests/translate/storage/test_csvl10n.py::TestCSV::test_add PASSED [ 46%] 1338s tests/translate/storage/test_csvl10n.py::TestCSV::test_remove PASSED [ 46%] 1338s tests/translate/storage/test_csvl10n.py::TestCSV::test_find PASSED [ 46%] 1338s tests/translate/storage/test_csvl10n.py::TestCSV::test_translate PASSED [ 46%] 1338s tests/translate/storage/test_csvl10n.py::TestCSV::test_parse PASSED [ 46%] 1338s tests/translate/storage/test_csvl10n.py::TestCSV::test_files PASSED [ 47%] 1338s tests/translate/storage/test_csvl10n.py::TestCSV::test_save PASSED [ 47%] 1338s tests/translate/storage/test_csvl10n.py::TestCSV::test_markup PASSED [ 47%] 1338s tests/translate/storage/test_csvl10n.py::TestCSV::test_nonascii PASSED [ 47%] 1338s tests/translate/storage/test_csvl10n.py::TestCSV::test_extensions PASSED [ 47%] 1338s tests/translate/storage/test_csvl10n.py::TestCSV::test_mimetypes PASSED [ 47%] 1338s tests/translate/storage/test_csvl10n.py::TestCSV::test_singlequoting PASSED [ 47%] 1338s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8 PASSED [ 47%] 1338s tests/translate/storage/test_csvl10n.py::TestCSV::test_dialect PASSED [ 47%] 1338s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8_sig PASSED [ 47%] 1338s tests/translate/storage/test_csvl10n.py::TestCSV::test_default PASSED [ 47%] 1338s tests/translate/storage/test_csvl10n.py::TestCSV::test_location_is_parsed PASSED [ 47%] 1338s tests/translate/storage/test_csvl10n.py::TestCSV::test_context_is_parsed PASSED [ 47%] 1338s tests/translate/storage/test_csvl10n.py::TestCSV::test_newline PASSED [ 47%] 1338s tests/translate/storage/test_csvl10n.py::TestCSV::test_parse_sample PASSED [ 47%] 1338s tests/translate/storage/test_csvl10n.py::TestCSV::test_utf_8_detection PASSED [ 47%] 1338s tests/translate/storage/test_csvl10n.py::TestCSV::test_encoding PASSED [ 47%] 1339s tests/translate/storage/test_csvl10n.py::TestCSV::test_corrupt PASSED [ 47%] 1339s tests/translate/storage/test_directory.py::TestDirectory::test_created PASSED [ 47%] 1339s tests/translate/storage/test_directory.py::TestDirectory::test_basic PASSED [ 47%] 1339s tests/translate/storage/test_directory.py::TestDirectory::test_structure PASSED [ 47%] 1339s tests/translate/storage/test_directory.py::TestDirectory::test_getunits PASSED [ 47%] 1339s tests/translate/storage/test_dtd.py::test_roundtrip_quoting PASSED [ 47%] 1339s tests/translate/storage/test_dtd.py::test_quotefordtd_unimplemented_cases XFAIL [ 47%] 1339s tests/translate/storage/test_dtd.py::test_quotefordtd PASSED [ 47%] 1339s tests/translate/storage/test_dtd.py::test_unquotefromdtd_unimplemented_cases XFAIL [ 47%] 1339s tests/translate/storage/test_dtd.py::test_unquotefromdtd PASSED [ 47%] 1339s tests/translate/storage/test_dtd.py::test_android_roundtrip_quoting PASSED [ 47%] 1339s tests/translate/storage/test_dtd.py::test_quoteforandroid PASSED [ 47%] 1339s tests/translate/storage/test_dtd.py::test_unquotefromandroid PASSED [ 47%] 1339s tests/translate/storage/test_dtd.py::test_removeinvalidamp PASSED [ 47%] 1339s tests/translate/storage/test_dtd.py::TestDTDUnit::test_isfuzzy PASSED [ 47%] 1339s tests/translate/storage/test_dtd.py::TestDTDUnit::test_create PASSED [ 47%] 1339s tests/translate/storage/test_dtd.py::TestDTDUnit::test_eq PASSED [ 47%] 1339s tests/translate/storage/test_dtd.py::TestDTDUnit::test_escapes PASSED [ 48%] 1339s tests/translate/storage/test_dtd.py::TestDTDUnit::test_difficult_escapes PASSED [ 48%] 1339s tests/translate/storage/test_dtd.py::TestDTDUnit::test_note_sanity PASSED [ 48%] 1339s tests/translate/storage/test_dtd.py::TestDTDUnit::test_target PASSED [ 48%] 1339s tests/translate/storage/test_dtd.py::TestDTDUnit::test_rich_get PASSED [ 48%] 1339s tests/translate/storage/test_dtd.py::TestDTDUnit::test_rich_set PASSED [ 48%] 1339s tests/translate/storage/test_dtd.py::TestDTD::test_create_blank PASSED [ 48%] 1339s tests/translate/storage/test_dtd.py::TestDTD::test_add PASSED [ 48%] 1339s tests/translate/storage/test_dtd.py::TestDTD::test_remove PASSED [ 48%] 1339s tests/translate/storage/test_dtd.py::TestDTD::test_find PASSED [ 48%] 1339s tests/translate/storage/test_dtd.py::TestDTD::test_parse PASSED [ 48%] 1339s tests/translate/storage/test_dtd.py::TestDTD::test_files PASSED [ 48%] 1339s tests/translate/storage/test_dtd.py::TestDTD::test_save PASSED [ 48%] 1339s tests/translate/storage/test_dtd.py::TestDTD::test_extensions PASSED [ 48%] 1339s tests/translate/storage/test_dtd.py::TestDTD::test_mimetypes PASSED [ 48%] 1339s tests/translate/storage/test_dtd.py::TestDTD::test_translate PASSED [ 48%] 1339s tests/translate/storage/test_dtd.py::TestDTD::test_markup PASSED [ 48%] 1339s tests/translate/storage/test_dtd.py::TestDTD::test_nonascii PASSED [ 48%] 1339s tests/translate/storage/test_dtd.py::TestDTD::test_simpleentity PASSED [ 48%] 1339s tests/translate/storage/test_dtd.py::TestDTD::test_blanklines PASSED [ 48%] 1339s tests/translate/storage/test_dtd.py::TestDTD::test_simpleentity_source PASSED [ 48%] 1339s tests/translate/storage/test_dtd.py::TestDTD::test_hashcomment_source PASSED [ 48%] 1339s tests/translate/storage/test_dtd.py::TestDTD::test_commentclosing PASSED [ 48%] 1339s tests/translate/storage/test_dtd.py::TestDTD::test_commententity PASSED [ 48%] 1339s tests/translate/storage/test_dtd.py::TestDTD::test_newlines_in_entity PASSED [ 48%] 1339s tests/translate/storage/test_dtd.py::TestDTD::test_conflate_comments PASSED [ 48%] 1339s tests/translate/storage/test_dtd.py::TestDTD::test_localisation_notes PASSED [ 48%] 1339s tests/translate/storage/test_dtd.py::TestDTD::test_entitityreference_in_source PASSED [ 48%] 1339s tests/translate/storage/test_dtd.py::TestDTD::test_entitityreference_order_in_source PASSED [ 48%] 1339s tests/translate/storage/test_dtd.py::TestDTD::test_comment_following XFAIL [ 48%] 1339s tests/translate/storage/test_dtd.py::TestDTD::test_comment_newline_space_closing PASSED [ 48%] 1339s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting XFAIL [ 48%] 1339s tests/translate/storage/test_dtd.py::TestDTD::test_missing_quotes PASSED [ 48%] 1339s tests/translate/storage/test_dtd.py::TestDTD::test_entity_escaping PASSED [ 49%] 1339s tests/translate/storage/test_dtd.py::TestDTD::test_entity_escaping_roundtrip PASSED [ 49%] 1339s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_create_blank PASSED [ 49%] 1339s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_add PASSED [ 49%] 1339s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_remove PASSED [ 49%] 1339s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_find PASSED [ 49%] 1339s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_parse PASSED [ 49%] 1339s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_files PASSED [ 49%] 1339s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_save PASSED [ 49%] 1339s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_extensions PASSED [ 49%] 1339s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_mimetypes PASSED [ 49%] 1339s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_translate PASSED [ 49%] 1339s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_markup PASSED [ 49%] 1339s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_nonascii PASSED [ 49%] 1339s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_single_quote_escape PASSED [ 49%] 1339s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_single_quote_escape_parse_and_convert_back PASSED [ 49%] 1339s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_double_quote_escape PASSED [ 49%] 1339s tests/translate/storage/test_dtd.py::TestAndroidDTD::test_android_double_quote_escape_parse_and_convert_back PASSED [ 49%] 1339s tests/translate/storage/test_factory.py::TestPOFactory::test_getclass PASSED [ 49%] 1339s tests/translate/storage/test_factory.py::TestPOFactory::test_getobject_store PASSED [ 49%] 1339s tests/translate/storage/test_factory.py::TestPOFactory::test_getobject PASSED [ 49%] 1339s tests/translate/storage/test_factory.py::TestPOFactory::test_get_noname_object PASSED [ 49%] 1339s tests/translate/storage/test_factory.py::TestPOFactory::test_gzfile PASSED [ 49%] 1339s tests/translate/storage/test_factory.py::TestPOFactory::test_bz2file PASSED [ 49%] 1339s tests/translate/storage/test_factory.py::TestPOFactory::test_directory PASSED [ 49%] 1339s tests/translate/storage/test_factory.py::TestXliffFactory::test_getclass PASSED [ 49%] 1339s tests/translate/storage/test_factory.py::TestXliffFactory::test_getobject_store PASSED [ 49%] 1339s tests/translate/storage/test_factory.py::TestXliffFactory::test_getobject PASSED [ 49%] 1339s tests/translate/storage/test_factory.py::TestXliffFactory::test_get_noname_object PASSED [ 49%] 1339s tests/translate/storage/test_factory.py::TestXliffFactory::test_gzfile PASSED [ 49%] 1339s tests/translate/storage/test_factory.py::TestXliffFactory::test_bz2file PASSED [ 49%] 1339s tests/translate/storage/test_factory.py::TestXliffFactory::test_directory PASSED [ 49%] 1339s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getclass PASSED [ 49%] 1339s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getobject_store PASSED [ 50%] 1339s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_getobject PASSED [ 50%] 1339s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_get_noname_object PASSED [ 50%] 1339s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_gzfile PASSED [ 50%] 1339s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_bz2file PASSED [ 50%] 1339s tests/translate/storage/test_factory.py::TestPOXliffFactory::test_directory PASSED [ 50%] 1339s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getclass PASSED [ 50%] 1339s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getobject_store PASSED [ 50%] 1339s tests/translate/storage/test_factory.py::TestWordfastFactory::test_getobject PASSED [ 50%] 1339s tests/translate/storage/test_factory.py::TestWordfastFactory::test_get_noname_object PASSED [ 50%] 1339s tests/translate/storage/test_factory.py::TestWordfastFactory::test_gzfile PASSED [ 50%] 1339s tests/translate/storage/test_factory.py::TestWordfastFactory::test_bz2file PASSED [ 50%] 1339s tests/translate/storage/test_factory.py::TestWordfastFactory::test_directory PASSED [ 50%] 1339s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_isfuzzy PASSED [ 50%] 1339s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_create PASSED [ 50%] 1339s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_eq PASSED [ 50%] 1339s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_escapes PASSED [ 50%] 1339s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_difficult_escapes PASSED [ 50%] 1339s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_note_sanity PASSED [ 50%] 1339s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_target PASSED [ 50%] 1339s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_rich_get PASSED [ 50%] 1339s tests/translate/storage/test_flatxml.py::TestFlatXMLUnit::test_rich_set PASSED [ 50%] 1339s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_create_blank PASSED [ 50%] 1339s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_add PASSED [ 50%] 1339s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_remove PASSED [ 50%] 1339s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_find PASSED [ 50%] 1339s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_parse PASSED [ 50%] 1339s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_files PASSED [ 50%] 1339s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_save PASSED [ 50%] 1339s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_extensions PASSED [ 50%] 1339s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_mimetypes PASSED [ 50%] 1339s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_translate PASSED [ 50%] 1339s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_markup PASSED [ 50%] 1339s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_nonascii PASSED [ 50%] 1339s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_root_config_detect PASSED [ 51%] 1339s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_value_config_detect PASSED [ 51%] 1339s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_key_config_detect PASSED [ 51%] 1339s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_value_config_mixed_ok PASSED [ 51%] 1339s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_namespace_config_detect PASSED [ 51%] 1339s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_four_spaces PASSED [ 51%] 1339s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_tab PASSED [ 51%] 1339s tests/translate/storage/test_flatxml.py::TestFlatXMLFile::test_indent_none_linearizes PASSED [ 51%] 1339s tests/translate/storage/test_html.py::test_guess_encoding PASSED [ 51%] 1339s tests/translate/storage/test_html.py::TestHTMLParsing::test_mismatched_tags PASSED [ 51%] 1339s tests/translate/storage/test_html.py::TestHTMLParsing::test_self_closing_tags PASSED [ 51%] 1339s tests/translate/storage/test_html.py::TestHTMLParsing::test_escaping_script_and_pre PASSED [ 51%] 1339s tests/translate/storage/test_html.py::TestHTMLExtraction::test_strip_html PASSED [ 51%] 1339s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_tag_figcaption PASSED [ 51%] 1339s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_tag_caption_td_th PASSED [ 51%] 1339s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_attr_alt PASSED [ 51%] 1339s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_attr_title PASSED [ 51%] 1339s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_pre PASSED [ 51%] 1339s tests/translate/storage/test_html.py::TestHTMLExtraction::test_extraction_pre_code PASSED [ 51%] 1339s tests/translate/storage/test_ini.py::TestINIUnit::test_isfuzzy PASSED [ 51%] 1339s tests/translate/storage/test_ini.py::TestINIUnit::test_create PASSED [ 51%] 1339s tests/translate/storage/test_ini.py::TestINIUnit::test_eq PASSED [ 51%] 1339s tests/translate/storage/test_ini.py::TestINIUnit::test_escapes PASSED [ 51%] 1339s tests/translate/storage/test_ini.py::TestINIUnit::test_difficult_escapes PASSED [ 51%] 1339s tests/translate/storage/test_ini.py::TestINIUnit::test_note_sanity PASSED [ 51%] 1339s tests/translate/storage/test_ini.py::TestINIUnit::test_target PASSED [ 51%] 1339s tests/translate/storage/test_ini.py::TestINIUnit::test_rich_get PASSED [ 51%] 1339s tests/translate/storage/test_ini.py::TestINIUnit::test_rich_set PASSED [ 51%] 1339s tests/translate/storage/test_ini.py::TestINIStore::test_create_blank PASSED [ 51%] 1339s tests/translate/storage/test_ini.py::TestINIStore::test_add PASSED [ 51%] 1339s tests/translate/storage/test_ini.py::TestINIStore::test_remove PASSED [ 51%] 1339s tests/translate/storage/test_ini.py::TestINIStore::test_find PASSED [ 51%] 1339s tests/translate/storage/test_ini.py::TestINIStore::test_parse PASSED [ 51%] 1339s tests/translate/storage/test_ini.py::TestINIStore::test_files PASSED [ 52%] 1339s tests/translate/storage/test_ini.py::TestINIStore::test_save PASSED [ 52%] 1339s tests/translate/storage/test_ini.py::TestINIStore::test_extensions PASSED [ 52%] 1339s tests/translate/storage/test_ini.py::TestINIStore::test_mimetypes PASSED [ 52%] 1339s tests/translate/storage/test_ini.py::TestINIStore::test_translate PASSED [ 52%] 1339s tests/translate/storage/test_ini.py::TestINIStore::test_markup PASSED [ 52%] 1339s tests/translate/storage/test_ini.py::TestINIStore::test_nonascii PASSED [ 52%] 1339s tests/translate/storage/test_ini.py::TestINIStore::test_serialize PASSED [ 52%] 1339s tests/translate/storage/test_ini.py::TestINIStore::test_rem PASSED [ 52%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_isfuzzy PASSED [ 52%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_create PASSED [ 52%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_eq PASSED [ 52%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_escapes PASSED [ 52%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_difficult_escapes PASSED [ 52%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_note_sanity PASSED [ 52%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_target PASSED [ 52%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_rich_get PASSED [ 52%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONResourceUnit::test_rich_set PASSED [ 52%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_create_blank PASSED [ 52%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_remove PASSED [ 52%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_find PASSED [ 52%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_parse PASSED [ 52%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_files PASSED [ 52%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_save PASSED [ 52%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_extensions PASSED [ 52%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_mimetypes PASSED [ 52%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_translate PASSED [ 52%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_markup PASSED [ 52%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_nonascii PASSED [ 52%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_serialize PASSED [ 52%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_can_not_detect PASSED [ 52%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_error PASSED [ 52%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_filter PASSED [ 52%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_ordering PASSED [ 52%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_args PASSED [ 53%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_bom PASSED [ 53%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_complex PASSED [ 53%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_complex_array PASSED [ 53%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add PASSED [ 53%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add_list_like PASSED [ 53%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_add_blank PASSED [ 53%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_types PASSED [ 53%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONResourceStore::test_null PASSED [ 53%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_isfuzzy PASSED [ 53%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_create PASSED [ 53%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_eq PASSED [ 53%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_escapes PASSED [ 53%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_difficult_escapes PASSED [ 53%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_note_sanity PASSED [ 53%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_target PASSED [ 53%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_rich_get PASSED [ 53%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_rich_set PASSED [ 53%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_serialize PASSED [ 53%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_ordering PASSED [ 53%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_array PASSED [ 53%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add PASSED [ 53%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_index PASSED [ 53%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_index_nested PASSED [ 53%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_nested_list_mixed PASSED [ 53%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_list_to_dict PASSED [ 53%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_complex_keys PASSED [ 53%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_add_other PASSED [ 53%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[0]-expected0] PASSED [ 53%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[test[0]-expected1] PASSED [ 53%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[test[0][1][2][3]-expected2] PASSED [ 53%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[test]selection-expected3] PASSED [ 53%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[test][0]selection-expected4] PASSED [ 53%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[[0][test]selection-expected5] PASSED [ 54%] 1339s tests/translate/storage/test_jsonl10n.py::TestJSONNestedResourceStore::test_from_string[-expected6] PASSED [ 54%] 1339s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_isfuzzy PASSED [ 54%] 1339s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_create PASSED [ 54%] 1339s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_eq PASSED [ 54%] 1339s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_escapes PASSED [ 54%] 1339s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_difficult_escapes PASSED [ 54%] 1339s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_note_sanity PASSED [ 54%] 1339s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_target PASSED [ 54%] 1339s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_rich_get PASSED [ 54%] 1339s tests/translate/storage/test_jsonl10n.py::TestWebExtensionUnit::test_rich_set PASSED [ 54%] 1339s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_create_blank PASSED [ 54%] 1339s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_add PASSED [ 54%] 1339s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_remove PASSED [ 54%] 1339s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_find PASSED [ 54%] 1339s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_parse PASSED [ 54%] 1339s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_files PASSED [ 54%] 1339s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_save PASSED [ 54%] 1339s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_extensions PASSED [ 54%] 1339s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_mimetypes PASSED [ 54%] 1339s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_translate PASSED [ 54%] 1339s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_markup PASSED [ 54%] 1339s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_nonascii PASSED [ 54%] 1339s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_serialize PASSED [ 54%] 1339s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_serialize_no_description PASSED [ 54%] 1339s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_set_target PASSED [ 54%] 1339s tests/translate/storage/test_jsonl10n.py::TestWebExtensionStore::test_placeholders PASSED [ 54%] 1339s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_create_blank PASSED [ 54%] 1339s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_add PASSED [ 54%] 1339s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_remove PASSED [ 54%] 1339s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_find PASSED [ 54%] 1339s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_parse PASSED [ 54%] 1339s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_files PASSED [ 54%] 1339s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_save PASSED [ 55%] 1339s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_extensions PASSED [ 55%] 1339s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_mimetypes PASSED [ 55%] 1339s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_translate PASSED [ 55%] 1339s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_markup PASSED [ 55%] 1339s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_nonascii PASSED [ 55%] 1339s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_serialize PASSED [ 55%] 1339s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_units PASSED [ 55%] 1339s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_plurals PASSED [ 55%] 1339s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_nested_array PASSED [ 55%] 1339s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_new_plural PASSED [ 55%] 1339s tests/translate/storage/test_jsonl10n.py::TestI18NextStore::test_new_plural_id PASSED [ 55%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_create_blank PASSED [ 55%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_add PASSED [ 55%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_remove PASSED [ 55%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_find PASSED [ 55%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_parse PASSED [ 55%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_files PASSED [ 55%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_save PASSED [ 55%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_extensions PASSED [ 55%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_mimetypes PASSED [ 55%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_translate PASSED [ 55%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_markup PASSED [ 55%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_nonascii PASSED [ 55%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_plurals PASSED [ 55%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_plurals_missing PASSED [ 55%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_case_no_msg PASSED [ 55%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoTextJsonFile::test_complex_id PASSED [ 55%] 1339s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_create_blank PASSED [ 55%] 1339s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_add PASSED [ 55%] 1339s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_remove PASSED [ 55%] 1339s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_find PASSED [ 55%] 1339s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_parse PASSED [ 55%] 1339s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_files PASSED [ 55%] 1339s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_save PASSED [ 56%] 1339s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_extensions PASSED [ 56%] 1339s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_mimetypes PASSED [ 56%] 1339s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_translate PASSED [ 56%] 1339s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_markup PASSED [ 56%] 1339s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_nonascii PASSED [ 56%] 1339s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_serialize PASSED [ 56%] 1339s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_units PASSED [ 56%] 1339s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_plurals PASSED [ 56%] 1339s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_nested_array PASSED [ 56%] 1339s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_new_plural PASSED [ 56%] 1339s tests/translate/storage/test_jsonl10n.py::TestI18NextV4Store::test_ru PASSED [ 56%] 1339s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_create_blank PASSED [ 56%] 1339s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_add PASSED [ 56%] 1339s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_remove PASSED [ 56%] 1339s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_find PASSED [ 56%] 1339s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_parse PASSED [ 56%] 1339s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_files PASSED [ 56%] 1339s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_save PASSED [ 56%] 1339s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_extensions PASSED [ 56%] 1339s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_mimetypes PASSED [ 56%] 1339s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_translate PASSED [ 56%] 1339s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_markup PASSED [ 56%] 1339s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_nonascii PASSED [ 56%] 1339s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_serialize PASSED [ 56%] 1339s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_units PASSED [ 56%] 1339s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_plurals PASSED [ 56%] 1339s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_nested_array PASSED [ 56%] 1339s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_new_plural PASSED [ 56%] 1339s tests/translate/storage/test_jsonl10n.py::TestFlatI18NextV4Store::test_ru PASSED [ 56%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_create_blank PASSED [ 56%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_add PASSED [ 56%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_remove PASSED [ 56%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_find PASSED [ 57%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_parse PASSED [ 57%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_files PASSED [ 57%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_save PASSED [ 57%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_extensions PASSED [ 57%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_mimetypes PASSED [ 57%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_translate PASSED [ 57%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_markup PASSED [ 57%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_nonascii PASSED [ 57%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_plurals PASSED [ 57%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_plurals_missing PASSED [ 57%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoI18NJsonFile::test_invalid PASSED [ 57%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_create_blank PASSED [ 57%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_add PASSED [ 57%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_remove PASSED [ 57%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_find PASSED [ 57%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_parse PASSED [ 57%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_files PASSED [ 57%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_save PASSED [ 57%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_extensions PASSED [ 57%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_mimetypes PASSED [ 57%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_translate PASSED [ 57%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_markup PASSED [ 57%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_nonascii PASSED [ 57%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_1 PASSED [ 57%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_2 PASSED [ 57%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_blank PASSED [ 57%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_plurals_missing PASSED [ 57%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_simplification PASSED [ 57%] 1339s tests/translate/storage/test_jsonl10n.py::TestGoI18NV2JsonFile::test_invalid PASSED [ 57%] 1339s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_create_blank PASSED [ 57%] 1339s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_add PASSED [ 57%] 1339s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_remove PASSED [ 57%] 1339s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_find PASSED [ 57%] 1339s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_parse PASSED [ 58%] 1339s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_files PASSED [ 58%] 1339s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_save PASSED [ 58%] 1339s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_extensions PASSED [ 58%] 1339s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_mimetypes PASSED [ 58%] 1339s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_translate PASSED [ 58%] 1339s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_markup PASSED [ 58%] 1339s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_nonascii PASSED [ 58%] 1339s tests/translate/storage/test_jsonl10n.py::TestARBJsonFile::test_roundtrip PASSED [ 58%] 1339s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_create_blank PASSED [ 58%] 1339s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_add PASSED [ 58%] 1339s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_remove PASSED [ 58%] 1339s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_find PASSED [ 58%] 1339s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_parse PASSED [ 58%] 1339s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_files PASSED [ 58%] 1339s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_save PASSED [ 58%] 1339s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_extensions PASSED [ 58%] 1339s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_mimetypes PASSED [ 58%] 1339s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_translate PASSED [ 58%] 1339s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_markup PASSED [ 58%] 1339s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_nonascii PASSED [ 58%] 1339s tests/translate/storage/test_jsonl10n.py::TestFormatJSJsonFile::test_roundtrip PASSED [ 58%] 1339s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_atx_heading PASSED [ 58%] 1339s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_autolink PASSED [ 58%] 1339s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_block_quote PASSED [ 58%] 1339s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_code_block PASSED [ 58%] 1339s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_code_span PASSED [ 58%] 1339s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_atx_heading PASSED [ 58%] 1339s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_document PASSED [ 58%] 1339s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_empty_list_item PASSED [ 58%] 1339s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_escaped_character PASSED [ 58%] 1339s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_hard_line_break PASSED [ 58%] 1339s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_block PASSED [ 58%] 1339s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_character_entities PASSED [ 59%] 1339s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_html_span PASSED [ 59%] 1339s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_image_embedded_in_link PASSED [ 59%] 1339s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_collapsed_reference_link PASSED [ 59%] 1339s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_full_reference_link PASSED [ 59%] 1339s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_link_reference_definition_and_shortcut_reference_link PASSED [ 59%] 1339s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_merging_of_adjacent_placeholders PASSED [ 59%] 1339s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_nested_block_tokens PASSED [ 59%] 1339s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_nested_list PASSED [ 59%] 1339s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_paragraph_with_basic_markup PASSED [ 59%] 1339s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_paragraph_with_only_whitespace_and_placeholders PASSED [ 59%] 1339s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_placeholder_trimming PASSED [ 59%] 1339s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_image PASSED [ 59%] 1339s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_image_no_title PASSED [ 59%] 1339s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_link PASSED [ 59%] 1339s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_plain_text_paragraph PASSED [ 59%] 1339s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_remove_placeholders_from_both_ends_of_translation_units PASSED [ 59%] 1339s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_setext_heading PASSED [ 59%] 1339s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_table_with_header PASSED [ 59%] 1339s tests/translate/storage/test_markdown.py::TestMarkdownTranslationUnitExtractionAndTranslation::test_thematic_break PASSED [ 59%] 1339s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_hard_line_break_in_translation_unit PASSED [ 59%] 1339s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_missing_placeholder PASSED [ 59%] 1339s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_duplicate_placeholder PASSED [ 59%] 1339s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_extraneous_placeholder PASSED [ 59%] 1339s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_reordered_placeholders PASSED [ 59%] 1339s tests/translate/storage/test_markdown.py::TestMarkdownRendering::test_invalid_markdown_in_translation PASSED [ 59%] 1339s tests/translate/storage/test_mo.py::TestMOUnit::test_isfuzzy PASSED [ 59%] 1339s tests/translate/storage/test_mo.py::TestMOUnit::test_create PASSED [ 59%] 1339s tests/translate/storage/test_mo.py::TestMOUnit::test_eq PASSED [ 59%] 1339s tests/translate/storage/test_mo.py::TestMOUnit::test_target PASSED [ 59%] 1339s tests/translate/storage/test_mo.py::TestMOUnit::test_escapes PASSED [ 59%] 1339s tests/translate/storage/test_mo.py::TestMOUnit::test_difficult_escapes PASSED [ 59%] 1339s tests/translate/storage/test_mo.py::TestMOUnit::test_note_sanity PASSED [ 59%] 1339s tests/translate/storage/test_mo.py::TestMOUnit::test_rich_get PASSED [ 60%] 1339s tests/translate/storage/test_mo.py::TestMOUnit::test_rich_set PASSED [ 60%] 1339s tests/translate/storage/test_mo.py::TestMOUnit::test_context PASSED [ 60%] 1339s tests/translate/storage/test_mo.py::TestMOFile::test_create_blank PASSED [ 60%] 1339s tests/translate/storage/test_mo.py::TestMOFile::test_add PASSED [ 60%] 1339s tests/translate/storage/test_mo.py::TestMOFile::test_remove PASSED [ 60%] 1339s tests/translate/storage/test_mo.py::TestMOFile::test_find PASSED [ 60%] 1339s tests/translate/storage/test_mo.py::TestMOFile::test_translate PASSED [ 60%] 1339s tests/translate/storage/test_mo.py::TestMOFile::test_parse PASSED [ 60%] 1339s tests/translate/storage/test_mo.py::TestMOFile::test_files PASSED [ 60%] 1339s tests/translate/storage/test_mo.py::TestMOFile::test_save PASSED [ 60%] 1339s tests/translate/storage/test_mo.py::TestMOFile::test_markup PASSED [ 60%] 1339s tests/translate/storage/test_mo.py::TestMOFile::test_nonascii PASSED [ 60%] 1339s tests/translate/storage/test_mo.py::TestMOFile::test_extensions PASSED [ 60%] 1339s tests/translate/storage/test_mo.py::TestMOFile::test_mimetypes PASSED [ 60%] 1339s tests/translate/storage/test_mo.py::TestMOFile::test_language PASSED [ 60%] 1339s tests/translate/storage/test_mo.py::TestMOFile::test_context PASSED [ 60%] 1339s tests/translate/storage/test_mo.py::TestMOFile::test_output PASSED [ 60%] 1339s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_isfuzzy PASSED [ 60%] 1339s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_create PASSED [ 60%] 1339s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_eq PASSED [ 60%] 1339s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_escapes PASSED [ 60%] 1339s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_difficult_escapes PASSED [ 60%] 1339s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_note_sanity PASSED [ 60%] 1339s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_target PASSED [ 60%] 1339s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_rich_get PASSED [ 60%] 1339s tests/translate/storage/test_monolingual.py::TestMonolingualUnit::test_rich_set PASSED [ 60%] 1339s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_create_blank PASSED [ 60%] 1339s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_add PASSED [ 60%] 1339s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_remove PASSED [ 60%] 1339s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_find PASSED [ 60%] 1339s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_parse PASSED [ 60%] 1339s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_files PASSED [ 60%] 1339s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_save PASSED [ 60%] 1339s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_extensions PASSED [ 61%] 1339s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_mimetypes PASSED [ 61%] 1339s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_translate PASSED [ 61%] 1339s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_markup PASSED [ 61%] 1339s tests/translate/storage/test_monolingual.py::TestMonolingualStore::test_nonascii PASSED [ 61%] 1339s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[-] PASSED [ 61%] 1339s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String-String] PASSED [ 61%] 1339s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok}-String] PASSED [ 61%] 1339s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {OK}-String] PASSED [ 61%] 1339s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[\u015e\u0167\u0159\u012b\u019e\u0260 {ok}-\u015e\u0167\u0159\u012b\u019e\u0260] PASSED [ 61%] 1339s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String{ok}-String] PASSED [ 61%] 1339s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String{OK}-String] PASSED [ 61%] 1339s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok}-String] PASSED [ 61%] 1339s tests/translate/storage/test_mozilla_lang.py::test_strip_ok[String {ok} -String] PASSED [ 61%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_isfuzzy PASSED [ 61%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_create PASSED [ 61%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_eq PASSED [ 61%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_target PASSED [ 61%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_escapes PASSED [ 61%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_difficult_escapes PASSED [ 61%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_note_sanity PASSED [ 61%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_rich_get PASSED [ 61%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_rich_set PASSED [ 61%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_translate_but_same PASSED [ 61%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_untranslated PASSED [ 61%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_comments PASSED [ 61%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangUnit::test_copy_target PASSED [ 61%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_create_blank PASSED [ 61%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_add PASSED [ 61%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_remove PASSED [ 61%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_find PASSED [ 61%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_translate PASSED [ 61%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_parse PASSED [ 61%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_files PASSED [ 62%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_save PASSED [ 62%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_markup PASSED [ 62%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_extensions PASSED [ 62%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_mimetypes PASSED [ 62%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_nonascii PASSED [ 62%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_format_layout PASSED [ 62%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_crlf PASSED [ 62%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_active_flag PASSED [ 62%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_multiline_comments PASSED [ 62%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_template PASSED [ 62%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[--False] PASSED [ 62%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ -Source -True] PASSED [ 62%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ {ok}-Source-True] PASSED [ 62%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[ {ok} -Source-True] PASSED [ 62%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_ok_translations[{ok}-Source-True] PASSED [ 62%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_headers PASSED [ 62%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_not_headers PASSED [ 62%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[0] PASSED [ 62%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[1] PASSED [ 62%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[2] PASSED [ 62%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_header_blanklines[3] PASSED [ 62%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_tag_comments PASSED [ 62%] 1339s tests/translate/storage/test_mozilla_lang.py::TestMozLangFile::test_maxlength PASSED [ 62%] 1339s tests/translate/storage/test_omegat.py::TestOtUnit::test_isfuzzy PASSED [ 62%] 1339s tests/translate/storage/test_omegat.py::TestOtUnit::test_create PASSED [ 62%] 1339s tests/translate/storage/test_omegat.py::TestOtUnit::test_eq PASSED [ 62%] 1339s tests/translate/storage/test_omegat.py::TestOtUnit::test_target PASSED [ 62%] 1339s tests/translate/storage/test_omegat.py::TestOtUnit::test_escapes PASSED [ 62%] 1339s tests/translate/storage/test_omegat.py::TestOtUnit::test_difficult_escapes PASSED [ 62%] 1339s tests/translate/storage/test_omegat.py::TestOtUnit::test_note_sanity PASSED [ 62%] 1339s tests/translate/storage/test_omegat.py::TestOtUnit::test_rich_get PASSED [ 62%] 1339s tests/translate/storage/test_omegat.py::TestOtUnit::test_rich_set PASSED [ 62%] 1339s tests/translate/storage/test_omegat.py::TestOtFile::test_create_blank PASSED [ 62%] 1339s tests/translate/storage/test_omegat.py::TestOtFile::test_add PASSED [ 63%] 1339s tests/translate/storage/test_omegat.py::TestOtFile::test_remove PASSED [ 63%] 1339s tests/translate/storage/test_omegat.py::TestOtFile::test_find PASSED [ 63%] 1339s tests/translate/storage/test_omegat.py::TestOtFile::test_translate PASSED [ 63%] 1339s tests/translate/storage/test_omegat.py::TestOtFile::test_parse PASSED [ 63%] 1339s tests/translate/storage/test_omegat.py::TestOtFile::test_files PASSED [ 63%] 1339s tests/translate/storage/test_omegat.py::TestOtFile::test_save PASSED [ 63%] 1339s tests/translate/storage/test_omegat.py::TestOtFile::test_markup PASSED [ 63%] 1339s tests/translate/storage/test_omegat.py::TestOtFile::test_nonascii PASSED [ 63%] 1339s tests/translate/storage/test_omegat.py::TestOtFile::test_mimetypes PASSED [ 63%] 1339s tests/translate/storage/test_omegat.py::TestOtFile::test_extensions XFAIL [ 63%] 1339s tests/translate/storage/test_oo.py::test_makekey PASSED [ 63%] 1339s tests/translate/storage/test_oo.py::test_escape_help_text PASSED [ 63%] 1339s tests/translate/storage/test_oo.py::TestOO::test_simpleentry PASSED [ 63%] 1339s tests/translate/storage/test_oo.py::TestOO::test_simpleentry_quickhelptest PASSED [ 63%] 1339s tests/translate/storage/test_oo.py::TestOO::test_simpleentry_title PASSED [ 63%] 1339s tests/translate/storage/test_oo.py::TestOO::test_blankline PASSED [ 63%] 1339s tests/translate/storage/test_oo.py::TestOO::test_fieldlength PASSED [ 63%] 1339s tests/translate/storage/test_oo.py::TestOO::test_escapes PASSED [ 63%] 1339s tests/translate/storage/test_php.py::test_php_escaping_single_quote PASSED [ 63%] 1339s tests/translate/storage/test_php.py::test_php_escaping_double_quote PASSED [ 63%] 1339s tests/translate/storage/test_php.py::TestPhpUnit::test_isfuzzy PASSED [ 63%] 1339s tests/translate/storage/test_php.py::TestPhpUnit::test_create PASSED [ 63%] 1339s tests/translate/storage/test_php.py::TestPhpUnit::test_eq PASSED [ 63%] 1339s tests/translate/storage/test_php.py::TestPhpUnit::test_escapes PASSED [ 63%] 1339s tests/translate/storage/test_php.py::TestPhpUnit::test_note_sanity PASSED [ 63%] 1339s tests/translate/storage/test_php.py::TestPhpUnit::test_target PASSED [ 63%] 1339s tests/translate/storage/test_php.py::TestPhpUnit::test_rich_get PASSED [ 63%] 1339s tests/translate/storage/test_php.py::TestPhpUnit::test_rich_set PASSED [ 63%] 1339s tests/translate/storage/test_php.py::TestPhpUnit::test_difficult_escapes PASSED [ 63%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_create_blank PASSED [ 63%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_add PASSED [ 63%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_remove PASSED [ 63%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_find PASSED [ 64%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_parse PASSED [ 64%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_files PASSED [ 64%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_save PASSED [ 64%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_extensions PASSED [ 64%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_mimetypes PASSED [ 64%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_translate PASSED [ 64%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_markup PASSED [ 64%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_nonascii PASSED [ 64%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition PASSED [ 64%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition_source PASSED [ 64%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_spaces_in_name PASSED [ 64%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_comment_definition PASSED [ 64%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_comment_blocks PASSED [ 64%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_comment_output PASSED [ 64%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_comment_add PASSED [ 64%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_multiline PASSED [ 64%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays PASSED [ 64%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_array_no_array_syntax PASSED [ 64%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_keys_with_spaces PASSED [ 64%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_non_textual PASSED [ 64%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_define PASSED [ 64%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_define_with_spaces_before_key PASSED [ 64%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_after_equal_delimiter PASSED [ 64%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_after_equal_delimiter_and_before_key PASSED [ 64%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_no_spaces_after_equal_delimiter PASSED [ 64%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_no_spaces_after_equaldel_but_before_key PASSED [ 64%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_entries_with_quotes PASSED [ 64%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_comments_at_entry_line_end PASSED [ 64%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_double_slash_comments_before_entries PASSED [ 64%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_define_spaces_before_end_delimiter PASSED [ 64%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simpledefinition_spaces_before_end_delimiter PASSED [ 64%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_no_trailing_comma PASSED [ 64%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_space_before_comma PASSED [ 65%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_space_before_array_declaration PASSED [ 65%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_declared_in_a_single_line PASSED [ 65%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_no_keys PASSED [ 65%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_with_no_keys_assigned_to_array PASSED [ 65%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_no_keys PASSED [ 65%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_assignment_in_line_where_multiline_comment_ends PASSED [ 65%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_arrays_using_short_array_syntax PASSED [ 65%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays PASSED [ 65%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_space_before_array_declaration PASSED [ 65%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_unnamed_nested_arrays PASSED [ 65%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_array_declaration_in_next_line PASSED [ 65%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_array_with_newline_after_delimiter PASSED [ 65%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_nested_arrays_with_blank_entries PASSED [ 65%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_slashstar_in_string PASSED [ 65%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_parsing_simple_heredoc_syntax PASSED [ 65%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_simpledefinition_after_define PASSED [ 65%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_quotes PASSED [ 65%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_concatenation PASSED [ 65%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_serialize PASSED [ 65%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_space_before_comma PASSED [ 65%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_equals_in_id PASSED [ 65%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_comma_in_string PASSED [ 65%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_nowdoc PASSED [ 65%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_plain_concatenation PASSED [ 65%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_array_keys PASSED [ 65%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_double_var PASSED [ 65%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_return_array PASSED [ 65%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_return_array_short PASSED [ 65%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_return_array_short_quotes PASSED [ 65%] 1339s tests/translate/storage/test_php.py::TestPhpFile::test_addunit PASSED [ 65%] 1339s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_isfuzzy PASSED [ 65%] 1339s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_create PASSED [ 65%] 1339s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_eq PASSED [ 65%] 1339s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_escapes PASSED [ 66%] 1339s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_difficult_escapes PASSED [ 66%] 1339s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_note_sanity PASSED [ 66%] 1339s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_target PASSED [ 66%] 1339s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_rich_get PASSED [ 66%] 1339s tests/translate/storage/test_php.py::TestLaravelPhpUnit::test_rich_set PASSED [ 66%] 1339s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_create_blank PASSED [ 66%] 1339s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_add PASSED [ 66%] 1339s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_remove PASSED [ 66%] 1339s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_find PASSED [ 66%] 1339s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_parse PASSED [ 66%] 1339s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_files PASSED [ 66%] 1339s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_save PASSED [ 66%] 1339s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_extensions PASSED [ 66%] 1339s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_mimetypes PASSED [ 66%] 1339s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_translate PASSED [ 66%] 1339s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_markup PASSED [ 66%] 1339s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_nonascii PASSED [ 66%] 1339s tests/translate/storage/test_php.py::TestLaravelPhpFile::test_plurals PASSED [ 66%] 1339s tests/translate/storage/test_po.py::test_roundtrip_quoting PASSED [ 66%] 1339s tests/translate/storage/test_po.py::TestPOUnit::test_isfuzzy PASSED [ 66%] 1339s tests/translate/storage/test_po.py::TestPOUnit::test_create PASSED [ 66%] 1339s tests/translate/storage/test_po.py::TestPOUnit::test_eq PASSED [ 66%] 1339s tests/translate/storage/test_po.py::TestPOUnit::test_target PASSED [ 66%] 1339s tests/translate/storage/test_po.py::TestPOUnit::test_escapes PASSED [ 66%] 1339s tests/translate/storage/test_po.py::TestPOUnit::test_difficult_escapes PASSED [ 66%] 1339s tests/translate/storage/test_po.py::TestPOUnit::test_note_sanity PASSED [ 66%] 1339s tests/translate/storage/test_po.py::TestPOUnit::test_rich_get PASSED [ 66%] 1339s tests/translate/storage/test_po.py::TestPOUnit::test_rich_set PASSED [ 66%] 1339s tests/translate/storage/test_po.py::TestPOUnit::test_istranslatable PASSED [ 66%] 1339s tests/translate/storage/test_po.py::TestPOUnit::test_locations PASSED [ 66%] 1339s tests/translate/storage/test_po.py::TestPOUnit::test_nongettext_location PASSED [ 66%] 1339s tests/translate/storage/test_po.py::TestPOUnit::test_adding_empty_note PASSED [ 66%] 1339s tests/translate/storage/test_po.py::TestPOUnit::test_markreview PASSED [ 67%] 1339s tests/translate/storage/test_po.py::TestPOUnit::test_errors PASSED [ 67%] 1339s tests/translate/storage/test_po.py::TestPOUnit::test_no_plural_settarget PASSED [ 67%] 1339s tests/translate/storage/test_po.py::TestPOUnit::test_wrapping_bug PASSED [ 67%] 1339s tests/translate/storage/test_po.py::TestPOUnit::test_extract_msgidcomments_from_text PASSED [ 67%] 1339s tests/translate/storage/test_po.py::TestPOUnit::test_isheader PASSED [ 67%] 1339s tests/translate/storage/test_po.py::TestPOUnit::test_buildfromunit PASSED [ 67%] 1339s tests/translate/storage/test_po.py::TestPOFile::test_create_blank PASSED [ 67%] 1339s tests/translate/storage/test_po.py::TestPOFile::test_add PASSED [ 67%] 1339s tests/translate/storage/test_po.py::TestPOFile::test_remove PASSED [ 67%] 1339s tests/translate/storage/test_po.py::TestPOFile::test_find PASSED [ 67%] 1339s tests/translate/storage/test_po.py::TestPOFile::test_translate PASSED [ 67%] 1339s tests/translate/storage/test_po.py::TestPOFile::test_parse PASSED [ 67%] 1339s tests/translate/storage/test_po.py::TestPOFile::test_files PASSED [ 67%] 1339s tests/translate/storage/test_po.py::TestPOFile::test_save PASSED [ 67%] 1339s tests/translate/storage/test_po.py::TestPOFile::test_markup PASSED [ 67%] 1339s tests/translate/storage/test_po.py::TestPOFile::test_nonascii PASSED [ 67%] 1339s tests/translate/storage/test_po.py::TestPOFile::test_extensions PASSED [ 67%] 1339s tests/translate/storage/test_po.py::TestPOFile::test_mimetypes PASSED [ 67%] 1339s tests/translate/storage/test_po.py::TestPOFile::test_context_only PASSED [ 67%] 1339s tests/translate/storage/test_po.py::TestPOFile::test_simpleentry PASSED [ 67%] 1339s tests/translate/storage/test_po.py::TestPOFile::test_copy PASSED [ 67%] 1339s tests/translate/storage/test_po.py::TestPOFile::test_parse_source_string PASSED [ 67%] 1339s tests/translate/storage/test_po.py::TestPOFile::test_parse_file PASSED [ 67%] 1339s tests/translate/storage/test_po.py::TestPOFile::test_unicode PASSED [ 67%] 1339s tests/translate/storage/test_po.py::TestPOFile::test_plurals PASSED [ 67%] 1339s tests/translate/storage/test_po.py::TestPOFile::test_plural_unicode PASSED [ 67%] 1339s tests/translate/storage/test_po.py::TestPOFile::test_nongettext_location PASSED [ 67%] 1339s tests/translate/storage/test_po.py::TestPOFile::test_percent_location PASSED [ 67%] 1340s tests/translate/storage/test_po.py::TestPOFile::test_kde_plurals XFAIL [ 67%] 1340s tests/translate/storage/test_po.py::TestPOFile::test_empty_lines_notes PASSED [ 67%] 1340s tests/translate/storage/test_po.py::TestPOFile::test_fuzzy PASSED [ 67%] 1340s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_untranslated XFAIL [ 67%] 1340s tests/translate/storage/test_po.py::TestPOFile::test_merging_automaticcomments PASSED [ 67%] 1340s tests/translate/storage/test_po.py::TestPOFile::test_malformed_units PASSED [ 68%] 1340s tests/translate/storage/test_po.py::TestPOFile::test_malformed_obsolete_units PASSED [ 68%] 1340s tests/translate/storage/test_po.py::TestPOFile::test_uniforum_po PASSED [ 68%] 1340s tests/translate/storage/test_po.py::TestPOFile::test_obsolete PASSED [ 68%] 1340s tests/translate/storage/test_po.py::TestPOFile::test_obsolete_with_prev_msgid PASSED [ 68%] 1340s tests/translate/storage/test_po.py::TestPOFile::test_header_escapes PASSED [ 68%] 1340s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete PASSED [ 68%] 1340s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_plural PASSED [ 68%] 1340s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_msgctxt PASSED [ 68%] 1340s tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_msgidcomments PASSED [ 68%] 1340s tests/translate/storage/test_po.py::TestPOFile::test_multiline_obsolete PASSED [ 68%] 1340s tests/translate/storage/test_po.py::TestPOFile::test_merge_duplicates PASSED [ 68%] 1340s tests/translate/storage/test_po.py::TestPOFile::test_merge_mixed_sources PASSED [ 68%] 1340s tests/translate/storage/test_po.py::TestPOFile::test_parse_context PASSED [ 68%] 1340s tests/translate/storage/test_po.py::TestPOFile::test_parse_advanced_context PASSED [ 68%] 1340s tests/translate/storage/test_po.py::TestPOFile::test_kde_context PASSED [ 68%] 1340s tests/translate/storage/test_po.py::TestPOFile::test_broken_kde_context PASSED [ 68%] 1340s tests/translate/storage/test_po.py::TestPOFile::test_id PASSED [ 68%] 1340s tests/translate/storage/test_po.py::TestPOFile::test_non_ascii_header_comments PASSED [ 68%] 1340s tests/translate/storage/test_po.py::TestPOFile::test_non_ascii_header_comments_2 PASSED [ 68%] 1340s tests/translate/storage/test_po.py::TestPOFile::test_final_slash PASSED [ 68%] 1340s tests/translate/storage/test_po.py::TestPOFile::test_unfinished_lines PASSED [ 68%] 1340s tests/translate/storage/test_po.py::TestPOFile::test_encoding_change PASSED [ 68%] 1340s tests/translate/storage/test_po.py::TestPOFile::test_istranslated PASSED [ 68%] 1340s tests/translate/storage/test_po.py::TestPOFile::test_wrapping PASSED [ 68%] 1340s tests/translate/storage/test_po.py::TestPOFile::test_wrapping_cjk PASSED [ 68%] 1340s tests/translate/storage/test_po.py::TestPOFile::test_wrap_emoji PASSED [ 68%] 1340s tests/translate/storage/test_po.py::TestPOFile::test_wrap_parenthesis XFAIL [ 68%] 1340s tests/translate/storage/test_po.py::TestPOFile::test_wrap_gettext PASSED [ 68%] 1340s tests/translate/storage/test_po.py::TestPOFile::test_msgidcomments PASSED [ 68%] 1340s tests/translate/storage/test_po.py::TestPOFile::test_unicode_ids PASSED [ 68%] 1340s tests/translate/storage/test_po.py::TestPOFile::test_syntax_error PASSED [ 68%] 1340s tests/translate/storage/test_po.py::TestPOFile::test_invalid PASSED [ 68%] 1340s tests/translate/storage/test_po.py::TestPOFile::test_wrapped_msgid PASSED [ 69%] 1340s tests/translate/storage/test_po.py::TestPOFile::test_missing_plural PASSED [ 69%] 1340s tests/translate/storage/test_pocommon.py::test_roundtrip_quote_plus PASSED [ 69%] 1340s tests/translate/storage/test_poheader.py::test_parseheaderstring PASSED [ 69%] 1340s tests/translate/storage/test_poheader.py::test_update PASSED [ 69%] 1340s tests/translate/storage/test_poheader.py::test_po_dates PASSED [ 69%] 1340s tests/translate/storage/test_poheader.py::test_timezones PASSED [ 69%] 1340s tests/translate/storage/test_poheader.py::test_header_blank PASSED [ 69%] 1340s tests/translate/storage/test_poheader.py::test_plural_equation PASSED [ 69%] 1340s tests/translate/storage/test_poheader.py::test_plural_equation_across_lines PASSED [ 69%] 1340s tests/translate/storage/test_poheader.py::test_updatecontributor PASSED [ 69%] 1340s tests/translate/storage/test_poheader.py::test_updatecontributor_header PASSED [ 69%] 1340s tests/translate/storage/test_poheader.py::test_language PASSED [ 69%] 1340s tests/translate/storage/test_poheader.py::test_project PASSED [ 69%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_isfuzzy PASSED [ 69%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_create PASSED [ 69%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_eq PASSED [ 69%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_target PASSED [ 69%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_escapes PASSED [ 69%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_difficult_escapes PASSED [ 69%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_note_sanity PASSED [ 69%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_rich_get PASSED [ 69%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_rich_set PASSED [ 69%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_markreview PASSED [ 69%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_errors PASSED [ 69%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_accepted_control_chars PASSED [ 69%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_unaccepted_control_chars PASSED [ 69%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_plurals PASSED [ 69%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFUnit::test_ids PASSED [ 69%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_create_blank PASSED [ 69%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_add PASSED [ 69%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_remove PASSED [ 69%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_find PASSED [ 69%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_translate PASSED [ 70%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_files PASSED [ 70%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_save PASSED [ 70%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_markup PASSED [ 70%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_nonascii PASSED [ 70%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_extensions PASSED [ 70%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_mimetypes PASSED [ 70%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_basic PASSED [ 70%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_namespace PASSED [ 70%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_rich_source PASSED [ 70%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_rich_target PASSED [ 70%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_source PASSED [ 70%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_target PASSED [ 70%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_sourcelanguage PASSED [ 70%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_targetlanguage PASSED [ 70%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_targetlanguage_multi PASSED [ 70%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_alttrans PASSED [ 70%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_fuzzy PASSED [ 70%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_xml_space PASSED [ 70%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parsing PASSED [ 70%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_entities PASSED [ 70%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_multiple_filenodes PASSED [ 70%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_indent PASSED [ 70%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_add_target PASSED [ 70%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_preserve PASSED [ 70%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_closing_tags PASSED [ 70%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_context_groups PASSED [ 70%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_getlocations PASSED [ 70%] 1340s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_addlocation PASSED [ 70%] 1341s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_huge PASSED [ 70%] 1341s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_preserve_add PASSED [ 70%] 1341s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parse PASSED [ 70%] 1341s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_parse_plural_alpha_id PASSED [ 70%] 1341s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_notes PASSED [ 70%] 1341s tests/translate/storage/test_poxliff.py::TestPOXLIFFfile::test_plural PASSED [ 71%] 1341s tests/translate/storage/test_properties.py::test_find_delimiter_pos_simple PASSED [ 71%] 1341s tests/translate/storage/test_properties.py::test_find_delimiter_pos_multiple PASSED [ 71%] 1341s tests/translate/storage/test_properties.py::test_find_delimiter_pos_none PASSED [ 71%] 1341s tests/translate/storage/test_properties.py::test_find_delimiter_pos_whitespace PASSED [ 71%] 1341s tests/translate/storage/test_properties.py::test_find_delimiter_pos_escapes PASSED [ 71%] 1341s tests/translate/storage/test_properties.py::test_is_line_continuation PASSED [ 71%] 1341s tests/translate/storage/test_properties.py::test_key_strip PASSED [ 71%] 1341s tests/translate/storage/test_properties.py::test_get_comment_one_line PASSED [ 71%] 1341s tests/translate/storage/test_properties.py::test_get_comment_start PASSED [ 71%] 1341s tests/translate/storage/test_properties.py::test_get_comment_end PASSED [ 71%] 1341s tests/translate/storage/test_properties.py::TestPropUnit::test_isfuzzy PASSED [ 71%] 1341s tests/translate/storage/test_properties.py::TestPropUnit::test_create PASSED [ 71%] 1341s tests/translate/storage/test_properties.py::TestPropUnit::test_eq PASSED [ 71%] 1341s tests/translate/storage/test_properties.py::TestPropUnit::test_escapes PASSED [ 71%] 1341s tests/translate/storage/test_properties.py::TestPropUnit::test_difficult_escapes PASSED [ 71%] 1341s tests/translate/storage/test_properties.py::TestPropUnit::test_note_sanity PASSED [ 71%] 1341s tests/translate/storage/test_properties.py::TestPropUnit::test_target PASSED [ 71%] 1341s tests/translate/storage/test_properties.py::TestPropUnit::test_rich_get PASSED [ 71%] 1341s tests/translate/storage/test_properties.py::TestPropUnit::test_rich_set PASSED [ 71%] 1341s tests/translate/storage/test_properties.py::TestGwtProp::test_create_blank PASSED [ 71%] 1341s tests/translate/storage/test_properties.py::TestGwtProp::test_add PASSED [ 71%] 1341s tests/translate/storage/test_properties.py::TestGwtProp::test_remove PASSED [ 71%] 1341s tests/translate/storage/test_properties.py::TestGwtProp::test_find PASSED [ 71%] 1341s tests/translate/storage/test_properties.py::TestGwtProp::test_parse PASSED [ 71%] 1341s tests/translate/storage/test_properties.py::TestGwtProp::test_files PASSED [ 71%] 1341s tests/translate/storage/test_properties.py::TestGwtProp::test_save PASSED [ 71%] 1341s tests/translate/storage/test_properties.py::TestGwtProp::test_extensions PASSED [ 71%] 1341s tests/translate/storage/test_properties.py::TestGwtProp::test_mimetypes PASSED [ 71%] 1341s tests/translate/storage/test_properties.py::TestGwtProp::test_translate PASSED [ 71%] 1341s tests/translate/storage/test_properties.py::TestGwtProp::test_markup PASSED [ 71%] 1341s tests/translate/storage/test_properties.py::TestGwtProp::test_nonascii PASSED [ 71%] 1341s tests/translate/storage/test_properties.py::TestGwtProp::test_quotes PASSED [ 71%] 1341s tests/translate/storage/test_properties.py::TestGwtProp::test_simpledefinition PASSED [ 72%] 1341s tests/translate/storage/test_properties.py::TestGwtProp::test_doubledefinition PASSED [ 72%] 1341s tests/translate/storage/test_properties.py::TestGwtProp::test_doubledefinition_source PASSED [ 72%] 1341s tests/translate/storage/test_properties.py::TestGwtProp::test_reduce PASSED [ 72%] 1341s tests/translate/storage/test_properties.py::TestGwtProp::test_increase PASSED [ 72%] 1341s tests/translate/storage/test_properties.py::TestGwtProp::test_extra_plurals PASSED [ 72%] 1341s tests/translate/storage/test_properties.py::TestGwtProp::test_non_plurals PASSED [ 72%] 1341s tests/translate/storage/test_properties.py::TestGwtProp::test_encoding PASSED [ 72%] 1341s tests/translate/storage/test_properties.py::TestProp::test_create_blank PASSED [ 72%] 1341s tests/translate/storage/test_properties.py::TestProp::test_add PASSED [ 72%] 1341s tests/translate/storage/test_properties.py::TestProp::test_remove PASSED [ 72%] 1341s tests/translate/storage/test_properties.py::TestProp::test_find PASSED [ 72%] 1341s tests/translate/storage/test_properties.py::TestProp::test_parse PASSED [ 72%] 1341s tests/translate/storage/test_properties.py::TestProp::test_files PASSED [ 72%] 1341s tests/translate/storage/test_properties.py::TestProp::test_save PASSED [ 72%] 1341s tests/translate/storage/test_properties.py::TestProp::test_extensions PASSED [ 72%] 1341s tests/translate/storage/test_properties.py::TestProp::test_mimetypes PASSED [ 72%] 1341s tests/translate/storage/test_properties.py::TestProp::test_translate PASSED [ 72%] 1341s tests/translate/storage/test_properties.py::TestProp::test_markup PASSED [ 72%] 1341s tests/translate/storage/test_properties.py::TestProp::test_nonascii PASSED [ 72%] 1341s tests/translate/storage/test_properties.py::TestProp::test_simpledefinition PASSED [ 72%] 1341s tests/translate/storage/test_properties.py::TestProp::test_simpledefinition_source PASSED [ 72%] 1341s tests/translate/storage/test_properties.py::TestProp::test_controlutf8_source PASSED [ 72%] 1341s tests/translate/storage/test_properties.py::TestProp::test_control_source PASSED [ 72%] 1341s tests/translate/storage/test_properties.py::TestProp::test_unicode_escaping PASSED [ 72%] 1341s tests/translate/storage/test_properties.py::TestProp::test_newlines_startend PASSED [ 72%] 1341s tests/translate/storage/test_properties.py::TestProp::test_space PASSED [ 72%] 1341s tests/translate/storage/test_properties.py::TestProp::test_whitespace_handling PASSED [ 72%] 1341s tests/translate/storage/test_properties.py::TestProp::test_key_value_delimiters_simple PASSED [ 72%] 1341s tests/translate/storage/test_properties.py::TestProp::test_comments PASSED [ 72%] 1341s tests/translate/storage/test_properties.py::TestProp::test_latin1 PASSED [ 72%] 1341s tests/translate/storage/test_properties.py::TestProp::test_fullspec_delimiters PASSED [ 72%] 1341s tests/translate/storage/test_properties.py::TestProp::test_fullspec_escaped_key PASSED [ 72%] 1341s tests/translate/storage/test_properties.py::TestProp::test_fullspec_line_continuation PASSED [ 72%] 1341s tests/translate/storage/test_properties.py::TestProp::test_fullspec_key_without_value PASSED [ 73%] 1341s tests/translate/storage/test_properties.py::TestProp::test_mac_strings PASSED [ 73%] 1341s tests/translate/storage/test_properties.py::TestProp::test_utf_16_save PASSED [ 73%] 1341s tests/translate/storage/test_properties.py::TestProp::test_mac_multiline_strings PASSED [ 73%] 1341s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_unicode PASSED [ 73%] 1341s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_utf8 PASSED [ 73%] 1341s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_newlines PASSED [ 73%] 1341s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_comments PASSED [ 73%] 1341s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_multilines_comments PASSED [ 73%] 1341s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_comments_dropping PASSED [ 73%] 1341s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_quotes PASSED [ 73%] 1341s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_equals PASSED [ 73%] 1341s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_serialization PASSED [ 73%] 1341s tests/translate/storage/test_properties.py::TestProp::test_mac_strings_double_backslashes PASSED [ 73%] 1341s tests/translate/storage/test_properties.py::TestProp::test_override_encoding PASSED [ 73%] 1341s tests/translate/storage/test_properties.py::TestProp::test_trailing_comments PASSED [ 73%] 1341s tests/translate/storage/test_properties.py::TestProp::test_utf16_byte_order_mark PASSED [ 73%] 1341s tests/translate/storage/test_properties.py::TestProp::test_raise_ioerror_if_cannot_detect_encoding PASSED [ 73%] 1341s tests/translate/storage/test_properties.py::TestProp::test_utf8_byte_order_mark PASSED [ 73%] 1341s tests/translate/storage/test_properties.py::TestProp::test_joomla_set_target PASSED [ 73%] 1341s tests/translate/storage/test_properties.py::TestProp::test_joomla PASSED [ 73%] 1341s tests/translate/storage/test_properties.py::TestProp::test_joomla_escape PASSED [ 73%] 1341s tests/translate/storage/test_properties.py::TestProp::test_serialize_missing_delimiter PASSED [ 73%] 1341s tests/translate/storage/test_properties.py::TestProp::test_serialize_missing_value PASSED [ 73%] 1341s tests/translate/storage/test_properties.py::TestProp::test_multi_comments PASSED [ 73%] 1341s tests/translate/storage/test_properties.py::TestProp::test_serialize_note PASSED [ 73%] 1341s tests/translate/storage/test_properties.py::TestProp::test_serialize_long_note PASSED [ 73%] 1341s tests/translate/storage/test_properties.py::TestXWiki::test_create_blank PASSED [ 73%] 1341s tests/translate/storage/test_properties.py::TestXWiki::test_add PASSED [ 73%] 1341s tests/translate/storage/test_properties.py::TestXWiki::test_remove PASSED [ 73%] 1341s tests/translate/storage/test_properties.py::TestXWiki::test_find PASSED [ 73%] 1341s tests/translate/storage/test_properties.py::TestXWiki::test_parse PASSED [ 73%] 1341s tests/translate/storage/test_properties.py::TestXWiki::test_files PASSED [ 73%] 1341s tests/translate/storage/test_properties.py::TestXWiki::test_save PASSED [ 74%] 1341s tests/translate/storage/test_properties.py::TestXWiki::test_extensions PASSED [ 74%] 1341s tests/translate/storage/test_properties.py::TestXWiki::test_mimetypes PASSED [ 74%] 1341s tests/translate/storage/test_properties.py::TestXWiki::test_translate PASSED [ 74%] 1341s tests/translate/storage/test_properties.py::TestXWiki::test_markup PASSED [ 74%] 1341s tests/translate/storage/test_properties.py::TestXWiki::test_nonascii PASSED [ 74%] 1341s tests/translate/storage/test_properties.py::TestXWiki::test_simpledefinition PASSED [ 74%] 1341s tests/translate/storage/test_properties.py::TestXWiki::test_missing_definition PASSED [ 74%] 1341s tests/translate/storage/test_properties.py::TestXWiki::test_missing_definition_source PASSED [ 74%] 1341s tests/translate/storage/test_properties.py::TestXWiki::test_definition_with_simple_quote PASSED [ 74%] 1341s tests/translate/storage/test_properties.py::TestXWiki::test_definition_with_simple_quote_and_argument PASSED [ 74%] 1341s tests/translate/storage/test_properties.py::TestXWiki::test_header_preserved PASSED [ 74%] 1341s tests/translate/storage/test_properties.py::TestXWiki::test_blank_line_before_comment_preserved PASSED [ 74%] 1341s tests/translate/storage/test_properties.py::TestXWiki::test_deprecated_comments_preserved PASSED [ 74%] 1341s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_create_blank PASSED [ 74%] 1341s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_add PASSED [ 74%] 1341s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_remove PASSED [ 74%] 1341s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_find PASSED [ 74%] 1341s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_parse PASSED [ 74%] 1341s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_files PASSED [ 74%] 1341s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_save PASSED [ 74%] 1341s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_extensions PASSED [ 74%] 1341s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_mimetypes PASSED [ 74%] 1341s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_translate PASSED [ 74%] 1341s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_markup PASSED [ 74%] 1341s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_nonascii PASSED [ 74%] 1341s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_simpledefinition PASSED [ 74%] 1341s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_missing_definition PASSED [ 74%] 1341s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_missing_definition_source PASSED [ 74%] 1341s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_simple_quote PASSED [ 74%] 1341s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_simple_quote_and_argument PASSED [ 74%] 1341s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_definition_with_encoded_html PASSED [ 74%] 1341s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_cleaning_attributes PASSED [ 74%] 1341s tests/translate/storage/test_properties.py::TestXWikiPageProperties::test_translate_source PASSED [ 75%] 1341s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_create_blank PASSED [ 75%] 1341s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_add PASSED [ 75%] 1341s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_find PASSED [ 75%] 1341s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_extensions PASSED [ 75%] 1341s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_mimetypes PASSED [ 75%] 1341s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_translate PASSED [ 75%] 1341s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_markup PASSED [ 75%] 1341s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_nonascii PASSED [ 75%] 1341s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_simpledefinition PASSED [ 75%] 1341s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_parse PASSED [ 75%] 1341s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_files PASSED [ 75%] 1341s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_save PASSED [ 75%] 1341s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_cleaning_attributes PASSED [ 75%] 1341s tests/translate/storage/test_properties.py::TestXWikiFullPage::test_remove XFAIL [ 75%] 1341s tests/translate/storage/test_pypo.py::TestHelpers::test_unescape PASSED [ 75%] 1341s tests/translate/storage/test_pypo.py::TestHelpers::test_quoteforpo PASSED [ 75%] 1341s tests/translate/storage/test_pypo.py::TestHelpers::test_quoteforpo_escaped_quotes PASSED [ 75%] 1341s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_isfuzzy PASSED [ 75%] 1341s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_create PASSED [ 75%] 1341s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_eq PASSED [ 75%] 1341s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_target PASSED [ 75%] 1341s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_escapes PASSED [ 75%] 1341s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_difficult_escapes PASSED [ 75%] 1341s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_note_sanity PASSED [ 75%] 1341s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_rich_get PASSED [ 75%] 1341s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_rich_set PASSED [ 75%] 1341s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_istranslatable PASSED [ 75%] 1341s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_locations PASSED [ 75%] 1341s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_nongettext_location PASSED [ 75%] 1341s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_adding_empty_note PASSED [ 75%] 1341s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_markreview PASSED [ 75%] 1341s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_errors PASSED [ 75%] 1341s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_no_plural_settarget PASSED [ 75%] 1341s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrapping_bug PASSED [ 76%] 1341s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_extract_msgidcomments_from_text PASSED [ 76%] 1341s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_isheader PASSED [ 76%] 1341s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_buildfromunit PASSED [ 76%] 1341s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_plurals PASSED [ 76%] 1341s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_plural_reduction PASSED [ 76%] 1341s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_notes PASSED [ 76%] 1341s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_notes_withcomments PASSED [ 76%] 1341s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_firstlines PASSED [ 76%] 1341s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_newlines PASSED [ 76%] 1341s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_max_line_length PASSED [ 76%] 1341s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_wrap_on_slash PASSED [ 76%] 1341s tests/translate/storage/test_pypo.py::TestPYPOUnit::test_spacing_max_line PASSED [ 76%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_create_blank PASSED [ 76%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_add PASSED [ 76%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_remove PASSED [ 76%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_find PASSED [ 76%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_translate PASSED [ 76%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse PASSED [ 76%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_files PASSED [ 76%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_save PASSED [ 76%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_markup PASSED [ 76%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_nonascii PASSED [ 76%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_extensions PASSED [ 76%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mimetypes PASSED [ 76%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_context_only PASSED [ 76%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_simpleentry PASSED [ 76%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_copy PASSED [ 76%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_source_string PASSED [ 76%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_file PASSED [ 76%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode PASSED [ 76%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_plurals PASSED [ 76%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_plural_unicode PASSED [ 76%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_nongettext_location PASSED [ 77%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_percent_location PASSED [ 77%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_plurals XFAIL [ 77%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_empty_lines_notes PASSED [ 77%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_fuzzy PASSED [ 77%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_untranslated XFAIL [ 77%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merging_automaticcomments PASSED [ 77%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_malformed_units PASSED [ 77%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_malformed_obsolete_units PASSED [ 77%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_uniforum_po PASSED [ 77%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_obsolete PASSED [ 77%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_obsolete_with_prev_msgid PASSED [ 77%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_header_escapes PASSED [ 77%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete PASSED [ 77%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_plural PASSED [ 77%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_msgctxt PASSED [ 77%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_msgidcomments PASSED [ 77%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_multiline_obsolete PASSED [ 77%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_duplicates PASSED [ 77%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_mixed_sources PASSED [ 77%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_context PASSED [ 77%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_parse_advanced_context PASSED [ 77%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_context PASSED [ 77%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_broken_kde_context PASSED [ 77%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_id PASSED [ 77%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_non_ascii_header_comments PASSED [ 77%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_non_ascii_header_comments_2 PASSED [ 77%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_final_slash PASSED [ 77%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unfinished_lines PASSED [ 77%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_encoding_change PASSED [ 77%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_istranslated PASSED [ 77%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapping PASSED [ 77%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapping_cjk PASSED [ 77%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_emoji PASSED [ 77%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_parenthesis XFAIL [ 78%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_gettext PASSED [ 78%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_msgidcomments PASSED [ 78%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode_ids PASSED [ 78%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_syntax_error PASSED [ 78%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrapped_msgid PASSED [ 78%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_missing_plural PASSED [ 78%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_combine_msgidcomments PASSED [ 78%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_duplicates_msgctxt PASSED [ 78%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_merge_blanks PASSED [ 78%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_output_str_unicode PASSED [ 78%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_posections PASSED [ 78%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_typecomments PASSED [ 78%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unassociated_comments PASSED [ 78%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unicode_header PASSED [ 78%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_prevmsgid_parse PASSED [ 78%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap PASSED [ 78%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_newlines PASSED [ 78%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_unix_newlines PASSED [ 78%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines PASSED [ 78%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mac_newlines PASSED [ 78%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines PASSED [ 78%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_header PASSED [ 78%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_comment PASSED [ 78%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_bom PASSED [ 78%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_long_msgidcomments PASSED [ 78%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_incomplete PASSED [ 78%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_invalid PASSED [ 78%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines_write PASSED [ 78%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_typecomment XFAIL [ 78%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_dos_newlines_typecomment PASSED [ 78%] 1341s tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_custom PASSED [ 78%] 1341s tests/translate/storage/test_qm.py::TestQtUnit::test_isfuzzy PASSED [ 78%] 1341s tests/translate/storage/test_qm.py::TestQtUnit::test_create PASSED [ 79%] 1341s tests/translate/storage/test_qm.py::TestQtUnit::test_eq PASSED [ 79%] 1341s tests/translate/storage/test_qm.py::TestQtUnit::test_target PASSED [ 79%] 1341s tests/translate/storage/test_qm.py::TestQtUnit::test_escapes PASSED [ 79%] 1341s tests/translate/storage/test_qm.py::TestQtUnit::test_difficult_escapes PASSED [ 79%] 1341s tests/translate/storage/test_qm.py::TestQtUnit::test_note_sanity PASSED [ 79%] 1341s tests/translate/storage/test_qm.py::TestQtUnit::test_rich_get PASSED [ 79%] 1341s tests/translate/storage/test_qm.py::TestQtUnit::test_rich_set PASSED [ 79%] 1341s tests/translate/storage/test_qm.py::TestQtFile::test_create_blank PASSED [ 79%] 1341s tests/translate/storage/test_qm.py::TestQtFile::test_find PASSED [ 79%] 1341s tests/translate/storage/test_qm.py::TestQtFile::test_translate PASSED [ 79%] 1341s tests/translate/storage/test_qm.py::TestQtFile::test_markup PASSED [ 79%] 1341s tests/translate/storage/test_qm.py::TestQtFile::test_extensions PASSED [ 79%] 1341s tests/translate/storage/test_qm.py::TestQtFile::test_mimetypes PASSED [ 79%] 1341s tests/translate/storage/test_qm.py::TestQtFile::test_parse PASSED [ 79%] 1341s tests/translate/storage/test_qm.py::TestQtFile::test_save PASSED [ 79%] 1341s tests/translate/storage/test_qm.py::TestQtFile::test_files PASSED [ 79%] 1341s tests/translate/storage/test_qm.py::TestQtFile::test_nonascii PASSED [ 79%] 1341s tests/translate/storage/test_qm.py::TestQtFile::test_add PASSED [ 79%] 1341s tests/translate/storage/test_qm.py::TestQtFile::test_remove PASSED [ 79%] 1341s tests/translate/storage/test_qph.py::TestQphUnit::test_isfuzzy PASSED [ 79%] 1341s tests/translate/storage/test_qph.py::TestQphUnit::test_create PASSED [ 79%] 1341s tests/translate/storage/test_qph.py::TestQphUnit::test_eq PASSED [ 79%] 1341s tests/translate/storage/test_qph.py::TestQphUnit::test_target PASSED [ 79%] 1341s tests/translate/storage/test_qph.py::TestQphUnit::test_escapes PASSED [ 79%] 1341s tests/translate/storage/test_qph.py::TestQphUnit::test_difficult_escapes PASSED [ 79%] 1341s tests/translate/storage/test_qph.py::TestQphUnit::test_note_sanity PASSED [ 79%] 1341s tests/translate/storage/test_qph.py::TestQphUnit::test_rich_get PASSED [ 79%] 1341s tests/translate/storage/test_qph.py::TestQphUnit::test_rich_set PASSED [ 79%] 1341s tests/translate/storage/test_qph.py::TestQphFile::test_create_blank PASSED [ 79%] 1341s tests/translate/storage/test_qph.py::TestQphFile::test_add PASSED [ 79%] 1341s tests/translate/storage/test_qph.py::TestQphFile::test_remove PASSED [ 79%] 1341s tests/translate/storage/test_qph.py::TestQphFile::test_find PASSED [ 79%] 1341s tests/translate/storage/test_qph.py::TestQphFile::test_translate PASSED [ 80%] 1341s tests/translate/storage/test_qph.py::TestQphFile::test_parse PASSED [ 80%] 1341s tests/translate/storage/test_qph.py::TestQphFile::test_files PASSED [ 80%] 1341s tests/translate/storage/test_qph.py::TestQphFile::test_save PASSED [ 80%] 1341s tests/translate/storage/test_qph.py::TestQphFile::test_markup PASSED [ 80%] 1341s tests/translate/storage/test_qph.py::TestQphFile::test_nonascii PASSED [ 80%] 1341s tests/translate/storage/test_qph.py::TestQphFile::test_extensions PASSED [ 80%] 1341s tests/translate/storage/test_qph.py::TestQphFile::test_mimetypes PASSED [ 80%] 1341s tests/translate/storage/test_qph.py::TestQphFile::test_basic PASSED [ 80%] 1341s tests/translate/storage/test_qph.py::TestQphFile::test_source PASSED [ 80%] 1341s tests/translate/storage/test_qph.py::TestQphFile::test_target PASSED [ 80%] 1341s tests/translate/storage/test_qph.py::TestQphFile::test_language PASSED [ 80%] 1341s tests/translate/storage/test_rc.py::test_escaping PASSED [ 80%] 1341s tests/translate/storage/test_rc.py::TestRcFile::test_parse_only_comments PASSED [ 80%] 1341s tests/translate/storage/test_rc.py::TestRcFile::test_parse_only_textinclude PASSED [ 80%] 1341s tests/translate/storage/test_rc.py::TestRcFile::test_parse_dialog PASSED [ 80%] 1341s tests/translate/storage/test_rc.py::TestRcFile::test_parse_stringtable PASSED [ 80%] 1341s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_lf PASSED [ 80%] 1341s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_crlf PASSED [ 80%] 1341s tests/translate/storage/test_rc.py::TestRcFile::test_parse_newlines_cr PASSED [ 80%] 1341s tests/translate/storage/test_rc.py::TestRcFile::test_parse_no_language PASSED [ 80%] 1341s tests/translate/storage/test_rc.py::TestRcFile::test_textinclude PASSED [ 80%] 1341s tests/translate/storage/test_rc.py::TestRcFile::test_multiline PASSED [ 80%] 1341s tests/translate/storage/test_rc.py::TestRcFile::test_str PASSED [ 80%] 1341s tests/translate/storage/test_rc.py::TestRcFile::test_empty PASSED [ 80%] 1341s tests/translate/storage/test_rc.py::TestRcFile::test_utf_8 PASSED [ 80%] 1341s tests/translate/storage/test_rc.py::TestRcFile::test_utf_16 PASSED [ 80%] 1341s tests/translate/storage/test_rc.py::TestRcFile::test_comment PASSED [ 80%] 1341s tests/translate/storage/test_rc.py::TestRcFile::test_stringtables PASSED [ 80%] 1341s tests/translate/storage/test_rc.py::TestRcFile::test_textinclude_appstudio PASSED [ 80%] 1341s tests/translate/storage/test_rc.py::TestRcFile::test_id_whitespace PASSED [ 80%] 1341s tests/translate/storage/test_rc.py::TestRcFile::test_menu_comment PASSED [ 80%] 1341s tests/translate/storage/test_rc.py::TestRcFile::test_decompiled PASSED [ 80%] 1341s tests/translate/storage/test_rc.py::TestRcFile::test_quotes PASSED [ 80%] 1341s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_isfuzzy PASSED [ 81%] 1341s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_create PASSED [ 81%] 1341s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_eq PASSED [ 81%] 1341s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_escapes PASSED [ 81%] 1341s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_difficult_escapes PASSED [ 81%] 1341s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_note_sanity PASSED [ 81%] 1341s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_target PASSED [ 81%] 1341s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_rich_get PASSED [ 81%] 1341s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryUnit::test_rich_set PASSED [ 81%] 1341s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_create_blank PASSED [ 81%] 1341s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_add PASSED [ 81%] 1341s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_remove PASSED [ 81%] 1341s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_find PASSED [ 81%] 1341s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_parse PASSED [ 81%] 1341s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_files PASSED [ 81%] 1341s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_save PASSED [ 81%] 1341s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_extensions PASSED [ 81%] 1341s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_mimetypes PASSED [ 81%] 1341s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_translate PASSED [ 81%] 1342s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_markup PASSED [ 81%] 1342s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_nonascii PASSED [ 81%] 1342s tests/translate/storage/test_resourcedictionary.py::TestResourceDictionaryFile::test_roundtrip PASSED [ 81%] 1342s tests/translate/storage/test_resx.py::TestRESXUnit::test_isfuzzy PASSED [ 81%] 1342s tests/translate/storage/test_resx.py::TestRESXUnit::test_create PASSED [ 81%] 1342s tests/translate/storage/test_resx.py::TestRESXUnit::test_eq PASSED [ 81%] 1342s tests/translate/storage/test_resx.py::TestRESXUnit::test_escapes PASSED [ 81%] 1342s tests/translate/storage/test_resx.py::TestRESXUnit::test_difficult_escapes PASSED [ 81%] 1342s tests/translate/storage/test_resx.py::TestRESXUnit::test_note_sanity PASSED [ 81%] 1342s tests/translate/storage/test_resx.py::TestRESXUnit::test_target PASSED [ 81%] 1342s tests/translate/storage/test_resx.py::TestRESXUnit::test_rich_get PASSED [ 81%] 1342s tests/translate/storage/test_resx.py::TestRESXUnit::test_rich_set PASSED [ 81%] 1342s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_isfuzzy PASSED [ 81%] 1342s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_create PASSED [ 81%] 1342s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_eq PASSED [ 82%] 1342s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_escapes PASSED [ 82%] 1342s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_difficult_escapes PASSED [ 82%] 1342s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_note_sanity PASSED [ 82%] 1342s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_target PASSED [ 82%] 1342s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_rich_get PASSED [ 82%] 1342s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_rich_set PASSED [ 82%] 1342s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_newunit PASSED [ 82%] 1342s tests/translate/storage/test_resx.py::TestRESXUnitFromParsedString::test_newunit_comment PASSED [ 82%] 1342s tests/translate/storage/test_resx.py::TestRESXfile::test_create_blank PASSED [ 82%] 1342s tests/translate/storage/test_resx.py::TestRESXfile::test_add PASSED [ 82%] 1342s tests/translate/storage/test_resx.py::TestRESXfile::test_remove PASSED [ 82%] 1342s tests/translate/storage/test_resx.py::TestRESXfile::test_find PASSED [ 82%] 1342s tests/translate/storage/test_resx.py::TestRESXfile::test_parse PASSED [ 82%] 1342s tests/translate/storage/test_resx.py::TestRESXfile::test_files PASSED [ 82%] 1342s tests/translate/storage/test_resx.py::TestRESXfile::test_save PASSED [ 82%] 1342s tests/translate/storage/test_resx.py::TestRESXfile::test_extensions PASSED [ 82%] 1342s tests/translate/storage/test_resx.py::TestRESXfile::test_mimetypes PASSED [ 82%] 1342s tests/translate/storage/test_resx.py::TestRESXfile::test_translate PASSED [ 82%] 1342s tests/translate/storage/test_resx.py::TestRESXfile::test_markup PASSED [ 82%] 1342s tests/translate/storage/test_resx.py::TestRESXfile::test_nonascii PASSED [ 82%] 1342s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_isfuzzy PASSED [ 82%] 1342s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_create PASSED [ 82%] 1342s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_eq PASSED [ 82%] 1342s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_escapes PASSED [ 82%] 1342s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_difficult_escapes PASSED [ 82%] 1342s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_note_sanity PASSED [ 82%] 1342s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_target PASSED [ 82%] 1342s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_rich_get PASSED [ 82%] 1342s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_rich_set PASSED [ 82%] 1342s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_source PASSED [ 82%] 1342s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_eq_formatvaluetype PASSED [ 82%] 1342s tests/translate/storage/test_stringsdict.py::TestStringsDictUnit::test_innerkey PASSED [ 82%] 1342s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_create_blank PASSED [ 82%] 1342s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_add PASSED [ 83%] 1342s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_remove PASSED [ 83%] 1342s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_find PASSED [ 83%] 1342s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_parse PASSED [ 83%] 1342s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_files PASSED [ 83%] 1342s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_save PASSED [ 83%] 1342s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_extensions PASSED [ 83%] 1342s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_mimetypes PASSED [ 83%] 1342s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_translate PASSED [ 83%] 1342s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_markup PASSED [ 83%] 1342s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_nonascii PASSED [ 83%] 1342s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_serialize PASSED [ 83%] 1342s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_default_handlings PASSED [ 83%] 1342s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_filename PASSED [ 83%] 1342s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_base_filename PASSED [ 83%] 1342s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_targetlanguage_auto_detection_filename_default_language PASSED [ 83%] 1342s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_plural_zero_always_set PASSED [ 83%] 1342s tests/translate/storage/test_stringsdict.py::TestStringsDictFile::test_add_unit PASSED [ 83%] 1342s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_isfuzzy PASSED [ 83%] 1342s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_create PASSED [ 83%] 1342s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_eq PASSED [ 83%] 1342s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_escapes PASSED [ 83%] 1342s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_difficult_escapes PASSED [ 83%] 1342s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_target PASSED [ 83%] 1342s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_rich_get PASSED [ 83%] 1342s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_rich_set PASSED [ 83%] 1342s tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_note_sanity XFAIL [ 83%] 1342s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_create_blank PASSED [ 83%] 1342s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_add PASSED [ 83%] 1342s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_remove PASSED [ 83%] 1342s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_find PASSED [ 83%] 1342s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_parse PASSED [ 83%] 1342s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_files PASSED [ 83%] 1342s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_save PASSED [ 84%] 1342s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_extensions PASSED [ 84%] 1342s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_mimetypes PASSED [ 84%] 1342s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_translate PASSED [ 84%] 1342s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_markup PASSED [ 84%] 1342s tests/translate/storage/test_subtitles.py::TestSubRipFile::test_nonascii PASSED [ 84%] 1342s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_create_blank PASSED [ 84%] 1342s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_add PASSED [ 84%] 1342s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_remove PASSED [ 84%] 1342s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_find PASSED [ 84%] 1342s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_parse PASSED [ 84%] 1342s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_files PASSED [ 84%] 1342s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_save PASSED [ 84%] 1342s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_extensions PASSED [ 84%] 1342s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_mimetypes PASSED [ 84%] 1342s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_translate PASSED [ 84%] 1342s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_markup PASSED [ 84%] 1342s tests/translate/storage/test_subtitles.py::TestMicroDVDFile::test_nonascii PASSED [ 84%] 1342s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_create_blank PASSED [ 84%] 1342s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_add PASSED [ 84%] 1342s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_remove PASSED [ 84%] 1342s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_find PASSED [ 84%] 1342s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_parse PASSED [ 84%] 1342s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_files PASSED [ 84%] 1342s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_save PASSED [ 84%] 1342s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_extensions PASSED [ 84%] 1342s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_mimetypes PASSED [ 84%] 1342s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_translate PASSED [ 84%] 1342s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_markup PASSED [ 84%] 1342s tests/translate/storage/test_subtitles.py::TestAdvSubStationAlphaFile::test_nonascii PASSED [ 84%] 1342s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_create_blank PASSED [ 84%] 1342s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_add PASSED [ 84%] 1342s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_remove PASSED [ 84%] 1342s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_find PASSED [ 85%] 1342s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_parse PASSED [ 85%] 1342s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_files PASSED [ 85%] 1342s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_save PASSED [ 85%] 1342s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_extensions PASSED [ 85%] 1342s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_mimetypes PASSED [ 85%] 1342s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_translate PASSED [ 85%] 1342s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_markup PASSED [ 85%] 1342s tests/translate/storage/test_subtitles.py::TestSubStationAlphaFile::test_nonascii PASSED [ 85%] 1342s tests/translate/storage/test_tbx.py::TestTBXUnit::test_isfuzzy PASSED [ 85%] 1342s tests/translate/storage/test_tbx.py::TestTBXUnit::test_create PASSED [ 85%] 1342s tests/translate/storage/test_tbx.py::TestTBXUnit::test_eq PASSED [ 85%] 1342s tests/translate/storage/test_tbx.py::TestTBXUnit::test_target PASSED [ 85%] 1342s tests/translate/storage/test_tbx.py::TestTBXUnit::test_escapes PASSED [ 85%] 1342s tests/translate/storage/test_tbx.py::TestTBXUnit::test_difficult_escapes PASSED [ 85%] 1342s tests/translate/storage/test_tbx.py::TestTBXUnit::test_note_sanity PASSED [ 85%] 1342s tests/translate/storage/test_tbx.py::TestTBXUnit::test_rich_get PASSED [ 85%] 1342s tests/translate/storage/test_tbx.py::TestTBXUnit::test_rich_set PASSED [ 85%] 1342s tests/translate/storage/test_tbx.py::TestTBXfile::test_create_blank PASSED [ 85%] 1342s tests/translate/storage/test_tbx.py::TestTBXfile::test_add PASSED [ 85%] 1342s tests/translate/storage/test_tbx.py::TestTBXfile::test_remove PASSED [ 85%] 1342s tests/translate/storage/test_tbx.py::TestTBXfile::test_find PASSED [ 85%] 1342s tests/translate/storage/test_tbx.py::TestTBXfile::test_translate PASSED [ 85%] 1342s tests/translate/storage/test_tbx.py::TestTBXfile::test_parse PASSED [ 85%] 1342s tests/translate/storage/test_tbx.py::TestTBXfile::test_files PASSED [ 85%] 1342s tests/translate/storage/test_tbx.py::TestTBXfile::test_save PASSED [ 85%] 1342s tests/translate/storage/test_tbx.py::TestTBXfile::test_markup PASSED [ 85%] 1342s tests/translate/storage/test_tbx.py::TestTBXfile::test_nonascii PASSED [ 85%] 1342s tests/translate/storage/test_tbx.py::TestTBXfile::test_extensions PASSED [ 85%] 1342s tests/translate/storage/test_tbx.py::TestTBXfile::test_mimetypes PASSED [ 85%] 1342s tests/translate/storage/test_tbx.py::TestTBXfile::test_basic PASSED [ 85%] 1342s tests/translate/storage/test_tbx.py::TestTBXfile::test_source PASSED [ 85%] 1342s tests/translate/storage/test_tbx.py::TestTBXfile::test_target PASSED [ 85%] 1342s tests/translate/storage/test_tbx.py::TestTBXfile::test_setid PASSED [ 85%] 1342s tests/translate/storage/test_tbx.py::TestTBXfile::test_indent PASSED [ 86%] 1342s tests/translate/storage/test_tbx.py::TestTBXfile::test_descrip PASSED [ 86%] 1342s tests/translate/storage/test_tbx.py::TestTBXfile::test_note_from PASSED [ 86%] 1342s tests/translate/storage/test_tiki.py::TestTikiUnit::test_locations PASSED [ 86%] 1342s tests/translate/storage/test_tiki.py::TestTikiUnit::test_to_unicode PASSED [ 86%] 1342s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_simple PASSED [ 86%] 1342s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_encode PASSED [ 86%] 1342s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_locations PASSED [ 86%] 1342s tests/translate/storage/test_tiki.py::TestTikiStore::test_parse_ignore_extras PASSED [ 86%] 1342s tests/translate/storage/test_tmx.py::TestTMXUnit::test_isfuzzy PASSED [ 86%] 1342s tests/translate/storage/test_tmx.py::TestTMXUnit::test_create PASSED [ 86%] 1342s tests/translate/storage/test_tmx.py::TestTMXUnit::test_eq PASSED [ 86%] 1342s tests/translate/storage/test_tmx.py::TestTMXUnit::test_target PASSED [ 86%] 1342s tests/translate/storage/test_tmx.py::TestTMXUnit::test_escapes PASSED [ 86%] 1342s tests/translate/storage/test_tmx.py::TestTMXUnit::test_difficult_escapes PASSED [ 86%] 1342s tests/translate/storage/test_tmx.py::TestTMXUnit::test_note_sanity PASSED [ 86%] 1342s tests/translate/storage/test_tmx.py::TestTMXUnit::test_rich_get PASSED [ 86%] 1342s tests/translate/storage/test_tmx.py::TestTMXUnit::test_rich_set PASSED [ 86%] 1342s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_isfuzzy PASSED [ 86%] 1342s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_create PASSED [ 86%] 1342s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_eq PASSED [ 86%] 1342s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_target PASSED [ 86%] 1342s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_escapes PASSED [ 86%] 1342s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_difficult_escapes PASSED [ 86%] 1342s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_note_sanity PASSED [ 86%] 1342s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_rich_get PASSED [ 86%] 1342s tests/translate/storage/test_tmx.py::TestTMXUnitFromParsedString::test_rich_set PASSED [ 86%] 1342s tests/translate/storage/test_tmx.py::TestTMXfile::test_create_blank PASSED [ 86%] 1342s tests/translate/storage/test_tmx.py::TestTMXfile::test_add PASSED [ 86%] 1342s tests/translate/storage/test_tmx.py::TestTMXfile::test_remove PASSED [ 86%] 1342s tests/translate/storage/test_tmx.py::TestTMXfile::test_find PASSED [ 86%] 1342s tests/translate/storage/test_tmx.py::TestTMXfile::test_parse PASSED [ 86%] 1342s tests/translate/storage/test_tmx.py::TestTMXfile::test_files PASSED [ 86%] 1342s tests/translate/storage/test_tmx.py::TestTMXfile::test_save PASSED [ 87%] 1342s tests/translate/storage/test_tmx.py::TestTMXfile::test_markup PASSED [ 87%] 1342s tests/translate/storage/test_tmx.py::TestTMXfile::test_nonascii PASSED [ 87%] 1342s tests/translate/storage/test_tmx.py::TestTMXfile::test_extensions PASSED [ 87%] 1342s tests/translate/storage/test_tmx.py::TestTMXfile::test_mimetypes PASSED [ 87%] 1342s tests/translate/storage/test_tmx.py::TestTMXfile::test_translate PASSED [ 87%] 1342s tests/translate/storage/test_tmx.py::TestTMXfile::test_addtranslation PASSED [ 87%] 1342s tests/translate/storage/test_tmx.py::TestTMXfile::test_withcomment PASSED [ 87%] 1342s tests/translate/storage/test_tmx.py::TestTMXfile::test_withnewlines PASSED [ 87%] 1342s tests/translate/storage/test_tmx.py::TestTMXfile::test_xmlentities PASSED [ 87%] 1342s tests/translate/storage/test_tmx.py::TestTMXfile::test_controls_cleaning PASSED [ 87%] 1342s tests/translate/storage/test_trados.py::test_unescape PASSED [ 87%] 1342s tests/translate/storage/test_trados.py::test_escape PASSED [ 87%] 1342s tests/translate/storage/test_ts.py::TestTS::test_construct PASSED [ 87%] 1342s tests/translate/storage/test_ts2.py::TestTSUnit::test_isfuzzy PASSED [ 87%] 1342s tests/translate/storage/test_ts2.py::TestTSUnit::test_create PASSED [ 87%] 1342s tests/translate/storage/test_ts2.py::TestTSUnit::test_eq PASSED [ 87%] 1342s tests/translate/storage/test_ts2.py::TestTSUnit::test_target PASSED [ 87%] 1342s tests/translate/storage/test_ts2.py::TestTSUnit::test_escapes PASSED [ 87%] 1342s tests/translate/storage/test_ts2.py::TestTSUnit::test_difficult_escapes PASSED [ 87%] 1342s tests/translate/storage/test_ts2.py::TestTSUnit::test_note_sanity PASSED [ 87%] 1342s tests/translate/storage/test_ts2.py::TestTSUnit::test_rich_get PASSED [ 87%] 1342s tests/translate/storage/test_ts2.py::TestTSUnit::test_rich_set PASSED [ 87%] 1342s tests/translate/storage/test_ts2.py::TestTSfile::test_create_blank PASSED [ 87%] 1342s tests/translate/storage/test_ts2.py::TestTSfile::test_add PASSED [ 87%] 1342s tests/translate/storage/test_ts2.py::TestTSfile::test_remove PASSED [ 87%] 1342s tests/translate/storage/test_ts2.py::TestTSfile::test_find PASSED [ 87%] 1342s tests/translate/storage/test_ts2.py::TestTSfile::test_translate PASSED [ 87%] 1342s tests/translate/storage/test_ts2.py::TestTSfile::test_parse PASSED [ 87%] 1342s tests/translate/storage/test_ts2.py::TestTSfile::test_files PASSED [ 87%] 1342s tests/translate/storage/test_ts2.py::TestTSfile::test_save PASSED [ 87%] 1342s tests/translate/storage/test_ts2.py::TestTSfile::test_markup PASSED [ 87%] 1342s tests/translate/storage/test_ts2.py::TestTSfile::test_nonascii PASSED [ 87%] 1342s tests/translate/storage/test_ts2.py::TestTSfile::test_extensions PASSED [ 87%] 1342s tests/translate/storage/test_ts2.py::TestTSfile::test_mimetypes PASSED [ 88%] 1342s tests/translate/storage/test_ts2.py::TestTSfile::test_basic PASSED [ 88%] 1342s tests/translate/storage/test_ts2.py::TestTSfile::test_source PASSED [ 88%] 1342s tests/translate/storage/test_ts2.py::TestTSfile::test_target PASSED [ 88%] 1342s tests/translate/storage/test_ts2.py::TestTSfile::test_plurals PASSED [ 88%] 1342s tests/translate/storage/test_ts2.py::TestTSfile::test_nplural PASSED [ 88%] 1342s tests/translate/storage/test_ts2.py::TestTSfile::test_language PASSED [ 88%] 1342s tests/translate/storage/test_ts2.py::TestTSfile::test_edit PASSED [ 88%] 1342s tests/translate/storage/test_ts2.py::TestTSfile::test_obsolete PASSED [ 88%] 1342s tests/translate/storage/test_ts2.py::TestTSfile::test_locations PASSED [ 88%] 1342s tests/translate/storage/test_ts2.py::TestTSfile::test_merge_with_fuzzies PASSED [ 88%] 1342s tests/translate/storage/test_ts2.py::TestTSfile::test_getid PASSED [ 88%] 1342s tests/translate/storage/test_ts2.py::TestTSfile::test_backnforth PASSED [ 88%] 1342s tests/translate/storage/test_ts2.py::TestTSfile::test_context PASSED [ 88%] 1342s tests/translate/storage/test_ts2.py::TestTSfile::test_roundtrip_context PASSED [ 88%] 1342s tests/translate/storage/test_ts2.py::TestTSfile::test_edit_missing_translation PASSED [ 88%] 1342s tests/translate/storage/test_ts2.py::TestTSfile::test_missing_source PASSED [ 88%] 1342s tests/translate/storage/test_txt.py::TestTxtUnit::test_isfuzzy PASSED [ 88%] 1342s tests/translate/storage/test_txt.py::TestTxtUnit::test_create PASSED [ 88%] 1342s tests/translate/storage/test_txt.py::TestTxtUnit::test_eq PASSED [ 88%] 1342s tests/translate/storage/test_txt.py::TestTxtUnit::test_escapes PASSED [ 88%] 1342s tests/translate/storage/test_txt.py::TestTxtUnit::test_difficult_escapes PASSED [ 88%] 1342s tests/translate/storage/test_txt.py::TestTxtUnit::test_note_sanity PASSED [ 88%] 1342s tests/translate/storage/test_txt.py::TestTxtUnit::test_target PASSED [ 88%] 1342s tests/translate/storage/test_txt.py::TestTxtUnit::test_rich_get PASSED [ 88%] 1342s tests/translate/storage/test_txt.py::TestTxtUnit::test_rich_set PASSED [ 88%] 1342s tests/translate/storage/test_txt.py::TestTxtFile::test_create_blank PASSED [ 88%] 1342s tests/translate/storage/test_txt.py::TestTxtFile::test_add PASSED [ 88%] 1342s tests/translate/storage/test_txt.py::TestTxtFile::test_remove PASSED [ 88%] 1342s tests/translate/storage/test_txt.py::TestTxtFile::test_find PASSED [ 88%] 1342s tests/translate/storage/test_txt.py::TestTxtFile::test_parse PASSED [ 88%] 1342s tests/translate/storage/test_txt.py::TestTxtFile::test_files PASSED [ 88%] 1342s tests/translate/storage/test_txt.py::TestTxtFile::test_save PASSED [ 88%] 1342s tests/translate/storage/test_txt.py::TestTxtFile::test_extensions PASSED [ 89%] 1342s tests/translate/storage/test_txt.py::TestTxtFile::test_mimetypes PASSED [ 89%] 1342s tests/translate/storage/test_txt.py::TestTxtFile::test_translate PASSED [ 89%] 1342s tests/translate/storage/test_txt.py::TestTxtFile::test_markup PASSED [ 89%] 1342s tests/translate/storage/test_txt.py::TestTxtFile::test_nonascii PASSED [ 89%] 1342s tests/translate/storage/test_txt.py::TestTxtFile::test_simpleblock PASSED [ 89%] 1342s tests/translate/storage/test_txt.py::TestTxtFile::test_multipleblocks PASSED [ 89%] 1342s tests/translate/storage/test_txt.py::TestTxtFile::test_no_segmentation PASSED [ 89%] 1342s tests/translate/storage/test_utx.py::TestUtxUnit::test_isfuzzy PASSED [ 89%] 1342s tests/translate/storage/test_utx.py::TestUtxUnit::test_create PASSED [ 89%] 1342s tests/translate/storage/test_utx.py::TestUtxUnit::test_eq PASSED [ 89%] 1342s tests/translate/storage/test_utx.py::TestUtxUnit::test_target PASSED [ 89%] 1342s tests/translate/storage/test_utx.py::TestUtxUnit::test_escapes PASSED [ 89%] 1342s tests/translate/storage/test_utx.py::TestUtxUnit::test_difficult_escapes PASSED [ 89%] 1342s tests/translate/storage/test_utx.py::TestUtxUnit::test_note_sanity PASSED [ 89%] 1342s tests/translate/storage/test_utx.py::TestUtxUnit::test_rich_get PASSED [ 89%] 1342s tests/translate/storage/test_utx.py::TestUtxUnit::test_rich_set PASSED [ 89%] 1342s tests/translate/storage/test_utx.py::TestUtxFile::test_create_blank PASSED [ 89%] 1342s tests/translate/storage/test_utx.py::TestUtxFile::test_add PASSED [ 89%] 1342s tests/translate/storage/test_utx.py::TestUtxFile::test_remove PASSED [ 89%] 1342s tests/translate/storage/test_utx.py::TestUtxFile::test_find PASSED [ 89%] 1342s tests/translate/storage/test_utx.py::TestUtxFile::test_translate PASSED [ 89%] 1342s tests/translate/storage/test_utx.py::TestUtxFile::test_parse PASSED [ 89%] 1342s tests/translate/storage/test_utx.py::TestUtxFile::test_files PASSED [ 89%] 1342s tests/translate/storage/test_utx.py::TestUtxFile::test_save PASSED [ 89%] 1342s tests/translate/storage/test_utx.py::TestUtxFile::test_markup PASSED [ 89%] 1342s tests/translate/storage/test_utx.py::TestUtxFile::test_nonascii PASSED [ 89%] 1342s tests/translate/storage/test_utx.py::TestUtxFile::test_extensions PASSED [ 89%] 1342s tests/translate/storage/test_utx.py::TestUtxFile::test_mimetypes PASSED [ 89%] 1342s tests/translate/storage/test_wordfast.py::TestWFTime::test_timestring PASSED [ 89%] 1342s tests/translate/storage/test_wordfast.py::TestWFTime::test_time PASSED [ 89%] 1342s tests/translate/storage/test_wordfast.py::TestWFUnit::test_isfuzzy PASSED [ 89%] 1342s tests/translate/storage/test_wordfast.py::TestWFUnit::test_create PASSED [ 89%] 1342s tests/translate/storage/test_wordfast.py::TestWFUnit::test_eq PASSED [ 90%] 1342s tests/translate/storage/test_wordfast.py::TestWFUnit::test_target PASSED [ 90%] 1342s tests/translate/storage/test_wordfast.py::TestWFUnit::test_escapes PASSED [ 90%] 1342s tests/translate/storage/test_wordfast.py::TestWFUnit::test_note_sanity PASSED [ 90%] 1342s tests/translate/storage/test_wordfast.py::TestWFUnit::test_rich_get PASSED [ 90%] 1342s tests/translate/storage/test_wordfast.py::TestWFUnit::test_rich_set PASSED [ 90%] 1342s tests/translate/storage/test_wordfast.py::TestWFUnit::test_difficult_escapes PASSED [ 90%] 1342s tests/translate/storage/test_wordfast.py::TestWFUnit::test_wordfast_escaping PASSED [ 90%] 1342s tests/translate/storage/test_wordfast.py::TestWFUnit::test_newlines PASSED [ 90%] 1342s tests/translate/storage/test_wordfast.py::TestWFUnit::test_language_setting PASSED [ 90%] 1342s tests/translate/storage/test_wordfast.py::TestWFUnit::test_istranslated PASSED [ 90%] 1342s tests/translate/storage/test_wordfast.py::TestWFFile::test_create_blank PASSED [ 90%] 1342s tests/translate/storage/test_wordfast.py::TestWFFile::test_add PASSED [ 90%] 1342s tests/translate/storage/test_wordfast.py::TestWFFile::test_remove PASSED [ 90%] 1342s tests/translate/storage/test_wordfast.py::TestWFFile::test_find PASSED [ 90%] 1342s tests/translate/storage/test_wordfast.py::TestWFFile::test_translate PASSED [ 90%] 1342s tests/translate/storage/test_wordfast.py::TestWFFile::test_parse PASSED [ 90%] 1342s tests/translate/storage/test_wordfast.py::TestWFFile::test_files PASSED [ 90%] 1342s tests/translate/storage/test_wordfast.py::TestWFFile::test_save PASSED [ 90%] 1342s tests/translate/storage/test_wordfast.py::TestWFFile::test_markup PASSED [ 90%] 1342s tests/translate/storage/test_wordfast.py::TestWFFile::test_nonascii PASSED [ 90%] 1342s tests/translate/storage/test_wordfast.py::TestWFFile::test_extensions PASSED [ 90%] 1342s tests/translate/storage/test_wordfast.py::TestWFFile::test_mimetypes PASSED [ 90%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_isfuzzy PASSED [ 90%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_create PASSED [ 90%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_eq PASSED [ 90%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_target PASSED [ 90%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_escapes PASSED [ 90%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_difficult_escapes PASSED [ 90%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_note_sanity PASSED [ 90%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_rich_get PASSED [ 90%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_rich_set PASSED [ 90%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_markreview PASSED [ 90%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_errors PASSED [ 90%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_accepted_control_chars PASSED [ 91%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFUnit::test_unaccepted_control_chars PASSED [ 91%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_create_blank PASSED [ 91%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_add PASSED [ 91%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_remove PASSED [ 91%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_find PASSED [ 91%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_translate PASSED [ 91%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_parse PASSED [ 91%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_files PASSED [ 91%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_save PASSED [ 91%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_markup PASSED [ 91%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_nonascii PASSED [ 91%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_extensions PASSED [ 91%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_mimetypes PASSED [ 91%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_basic PASSED [ 91%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_namespace PASSED [ 91%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_rich_source PASSED [ 91%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_rich_target PASSED [ 91%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_source PASSED [ 91%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_target PASSED [ 91%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_sourcelanguage PASSED [ 91%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_targetlanguage PASSED [ 91%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_targetlanguage_multi PASSED [ 91%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_notes PASSED [ 91%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_alttrans PASSED [ 91%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_fuzzy PASSED [ 91%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_xml_space PASSED [ 91%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_parsing PASSED [ 91%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_entities PASSED [ 91%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_multiple_filenodes PASSED [ 91%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_indent PASSED [ 91%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_add_target PASSED [ 91%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_preserve PASSED [ 91%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_closing_tags PASSED [ 92%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_context_groups PASSED [ 92%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_getlocations PASSED [ 92%] 1342s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_addlocation PASSED [ 92%] 1343s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_huge PASSED [ 92%] 1343s tests/translate/storage/test_xliff.py::TestXLIFFfile::test_preserve_add PASSED [ 92%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_isfuzzy PASSED [ 92%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_create PASSED [ 92%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_eq PASSED [ 92%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_escapes PASSED [ 92%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_difficult_escapes PASSED [ 92%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_note_sanity PASSED [ 92%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_target PASSED [ 92%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_rich_get PASSED [ 92%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_rich_set PASSED [ 92%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceUnit::test_getlocations PASSED [ 92%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_create_blank PASSED [ 92%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_add PASSED [ 92%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_find PASSED [ 92%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_parse PASSED [ 92%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_files PASSED [ 92%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_save PASSED [ 92%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_extensions PASSED [ 92%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_mimetypes PASSED [ 92%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_translate PASSED [ 92%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_markup PASSED [ 92%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_nonascii PASSED [ 92%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_serialize PASSED [ 92%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_empty PASSED [ 92%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_edit PASSED [ 92%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_edit_unicode PASSED [ 92%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_parse_unicode_list PASSED [ 92%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_ordering PASSED [ 92%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_initial_comments PASSED [ 92%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_string_key PASSED [ 93%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_nested PASSED [ 93%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_multiline PASSED [ 93%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_boolean PASSED [ 93%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_integer PASSED [ 93%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_no_quote_strings PASSED [ 93%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_double_quote_strings PASSED [ 93%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_single_quote_strings PASSED [ 93%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_avoid_escaping_double_quote_strings PASSED [ 93%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_avoid_escaping_single_quote_strings PASSED [ 93%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_escaped_double_quotes PASSED [ 93%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_newlines PASSED [ 93%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_abbreviated_list PASSED [ 93%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_abbreviated_dictionary PASSED [ 93%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_key_nesting PASSED [ 93%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_add_to_mepty PASSED [ 93%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_empty_key PASSED [ 93%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_dict_in_list PASSED [ 93%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_dump_args PASSED [ 93%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_anchors PASSED [ 93%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_tagged_scalar PASSED [ 93%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_numeric PASSED [ 93%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_remove PASSED [ 93%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_special PASSED [ 93%] 1343s tests/translate/storage/test_yaml.py::TestYAMLResourceStore::test_quotes_roundtrip PASSED [ 93%] 1343s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_create_blank PASSED [ 93%] 1343s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_remove PASSED [ 93%] 1343s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_find PASSED [ 93%] 1343s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_parse PASSED [ 93%] 1343s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_files PASSED [ 93%] 1343s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_save PASSED [ 93%] 1343s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_extensions PASSED [ 93%] 1343s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_mimetypes PASSED [ 93%] 1343s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_translate PASSED [ 94%] 1343s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_markup PASSED [ 94%] 1343s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_nonascii PASSED [ 94%] 1343s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_list PASSED [ 94%] 1343s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby PASSED [ 94%] 1343s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_wrong PASSED [ 94%] 1343s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_invalid_value PASSED [ 94%] 1343s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_ruby_plural PASSED [ 94%] 1343s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_empty PASSED [ 94%] 1343s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_anchors PASSED [ 94%] 1343s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_type_change PASSED [ 94%] 1343s tests/translate/storage/test_yaml.py::TestRubyYAMLResourceStore::test_add PASSED [ 94%] 1343s tests/translate/storage/test_zip.py::TestZIPFile::test_created PASSED [ 94%] 1343s tests/translate/storage/test_zip.py::TestZIPFile::test_basic PASSED [ 94%] 1343s tests/translate/storage/test_zip.py::TestZIPFile::test_structure PASSED [ 94%] 1343s tests/translate/storage/test_zip.py::TestZIPFile::test_getunits PASSED [ 94%] 1343s tests/translate/storage/xml_extract/test_misc.py::test_reduce_tree PASSED [ 94%] 1343s tests/translate/storage/xml_extract/test_misc.py::test_compose_mappings PASSED [ 94%] 1343s tests/translate/storage/xml_extract/test_misc.py::test_parse_tag PASSED [ 94%] 1343s tests/translate/storage/xml_extract/test_unit_tree.py::test__split_xpath_component PASSED [ 94%] 1343s tests/translate/storage/xml_extract/test_unit_tree.py::test__split_xpath PASSED [ 94%] 1343s tests/translate/storage/xml_extract/test_unit_tree.py::test__add_unit_to_tree PASSED [ 94%] 1343s tests/translate/storage/xml_extract/test_xpath_breadcrumb.py::test_breadcrumb PASSED [ 94%] 1343s tests/translate/tools/test_help.py::test_help[build_tmdb] PASSED [ 94%] 1343s tests/translate/tools/test_help.py::test_help[phppo2pypo] PASSED [ 94%] 1343s tests/translate/tools/test_help.py::test_help[poclean] PASSED [ 94%] 1343s tests/translate/tools/test_help.py::test_help[pocompile] PASSED [ 94%] 1343s tests/translate/tools/test_help.py::test_help[poconflicts] PASSED [ 94%] 1343s tests/translate/tools/test_help.py::test_help[pocount] PASSED [ 94%] 1343s tests/translate/tools/test_help.py::test_help[podebug] PASSED [ 94%] 1343s tests/translate/tools/test_help.py::test_help[pogrep] PASSED [ 94%] 1343s tests/translate/tools/test_help.py::test_help[pomerge] PASSED [ 94%] 1343s tests/translate/tools/test_help.py::test_help[porestructure] PASSED [ 94%] 1344s tests/translate/tools/test_help.py::test_help[posegment] PASSED [ 95%] 1344s tests/translate/tools/test_help.py::test_help[poswap] PASSED [ 95%] 1344s tests/translate/tools/test_help.py::test_help[poterminology] PASSED [ 95%] 1344s tests/translate/tools/test_help.py::test_help[pretranslate] PASSED [ 95%] 1344s tests/translate/tools/test_help.py::test_help[pydiff] PASSED [ 95%] 1344s tests/translate/tools/test_help.py::test_help[pypo2phppo] PASSED [ 95%] 1344s tests/translate/tools/test_junitmsgfmt.py::test_output[failure] PASSED [ 95%] 1344s tests/translate/tools/test_junitmsgfmt.py::test_output[untranslated] PASSED [ 95%] 1344s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPo::test_single_po PASSED [ 95%] 1344s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPo::test_plural_po PASSED [ 95%] 1344s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_single_po PASSED [ 95%] 1344s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_plural_po PASSED [ 95%] 1344s tests/translate/tools/test_phppo2pypo.py::TestPhpPo2PyPoCommand::test_help PASSED [ 95%] 1344s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_zero PASSED [ 95%] 1344s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_one PASSED [ 95%] 1344s tests/translate/tools/test_pocount.py::TestCount::test_simple_count_two PASSED [ 95%] 1344s tests/translate/tools/test_pocount.py::TestCount::test_punctuation_divides_words PASSED [ 95%] 1344s tests/translate/tools/test_pocount.py::TestCount::test_xml_tags PASSED [ 95%] 1344s tests/translate/tools/test_pocount.py::TestCount::test_newlines PASSED [ 95%] 1344s tests/translate/tools/test_pocount.py::TestCount::test_variables_are_words PASSED [ 95%] 1344s tests/translate/tools/test_pocount.py::TestCount::test_plurals PASSED [ 95%] 1344s tests/translate/tools/test_pocount.py::TestCount::test_plurals_kde XFAIL [ 95%] 1344s tests/translate/tools/test_pocount.py::TestCount::test_msgid_blank PASSED [ 95%] 1344s tests/translate/tools/test_pocount.py::TestPOCount::test_translated PASSED [ 95%] 1344s tests/translate/tools/test_pocount.py::TestPOCount::test_fuzzy PASSED [ 95%] 1344s tests/translate/tools/test_pocount.py::TestPOCount::test_untranslated PASSED [ 95%] 1344s tests/translate/tools/test_pocount.py::TestPOCount::test_total PASSED [ 95%] 1344s tests/translate/tools/test_pocount.py::TestPOCount::test_translatedsourcewords PASSED [ 95%] 1344s tests/translate/tools/test_pocount.py::TestPOCount::test_fuzzysourcewords PASSED [ 95%] 1344s tests/translate/tools/test_pocount.py::TestPOCount::test_untranslatedsourcewords PASSED [ 95%] 1344s tests/translate/tools/test_pocount.py::TestPOCount::test_totalsourcewords PASSED [ 95%] 1344s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-csv] PASSED [ 95%] 1344s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-full] PASSED [ 95%] 1344s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-short-strings] PASSED [ 95%] 1344s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=True-short-words] PASSED [ 96%] 1344s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-csv] PASSED [ 96%] 1344s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-full] PASSED [ 96%] 1344s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-short-strings] PASSED [ 96%] 1344s tests/translate/tools/test_pocount.py::test_output[no-color=True-incomplete=False-short-words] PASSED [ 96%] 1344s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-csv] PASSED [ 96%] 1344s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-full] PASSED [ 96%] 1344s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-short-strings] PASSED [ 96%] 1344s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=True-short-words] PASSED [ 96%] 1344s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-csv] PASSED [ 96%] 1344s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-full] PASSED [ 96%] 1344s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-short-strings] PASSED [ 96%] 1344s tests/translate/tools/test_pocount.py::test_output[no-color=False-incomplete=False-short-words] PASSED [ 96%] 1344s tests/translate/tools/test_pocount.py::test_cases[po-file] PASSED [ 96%] 1344s tests/translate/tools/test_pocount.py::test_cases[po-file-fuzzy] PASSED [ 96%] 1344s tests/translate/tools/test_pocount.py::test_cases[po-file-csv] PASSED [ 96%] 1344s tests/translate/tools/test_pocount.py::test_cases[xliff-states-yes] PASSED [ 96%] 1344s tests/translate/tools/test_pocount.py::test_cases[xliff-states-no] PASSED [ 96%] 1344s tests/translate/tools/test_pocount.py::test_error_cases[mutually-exclusive] PASSED [ 96%] 1344s tests/translate/tools/test_pocount.py::test_error_cases[missing-file] PASSED [ 96%] 1344s tests/translate/tools/test_pocount.py::test_error_cases[no-args] PASSED [ 96%] 1344s tests/translate/tools/test_podebug.py::TestPODebug::test_ignore_gtk PASSED [ 96%] 1344s tests/translate/tools/test_podebug.py::TestPODebug::test_keep_target PASSED [ 96%] 1344s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_blank PASSED [ 96%] 1344s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_en PASSED [ 96%] 1344s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_xxx PASSED [ 96%] 1344s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_bracket PASSED [ 96%] 1344s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode PASSED [ 96%] 1344s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_at_placeholders PASSED [ 96%] 1344s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_single_brace_placeholders PASSED [ 96%] 1344s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_double_brace_placeholders PASSED [ 96%] 1344s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_html PASSED [ 96%] 1344s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_unicode_preserves_multiple_styles_of_placeholder PASSED [ 96%] 1344s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped PASSED [ 97%] 1344s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_at_placeholders PASSED [ 97%] 1344s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_single_brace_placeholders PASSED [ 97%] 1344s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_double_brace_placeholders PASSED [ 97%] 1344s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_preserves_html PASSED [ 97%] 1344s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_flipped_multiple_styles_of_placeholder PASSED [ 97%] 1344s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified PASSED [ 97%] 1344s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_at_placeholders PASSED [ 97%] 1344s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_single_brace_placeholders PASSED [ 97%] 1344s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_double_brace_placeholders PASSED [ 97%] 1344s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_preserves_html PASSED [ 97%] 1344s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_classified_multiple_styles_of_placeholder PASSED [ 97%] 1344s tests/translate/tools/test_podebug.py::TestPODebug::test_rewrite_chef PASSED [ 97%] 1344s tests/translate/tools/test_podebug.py::TestPODebug::test_po_variables PASSED [ 97%] 1344s tests/translate/tools/test_podebug.py::TestPODebug::test_xliff_rewrite PASSED [ 97%] 1344s tests/translate/tools/test_podebug.py::TestPODebug::test_hash PASSED [ 97%] 1344s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_msgid PASSED [ 97%] 1344s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_msgstr PASSED [ 97%] 1344s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_locations PASSED [ 97%] 1344s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_comments PASSED [ 97%] 1344s tests/translate/tools/test_pogrep.py::TestPOGrep::test_simplegrep_locations_with_comment_enabled PASSED [ 97%] 1344s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_message_searchstring PASSED [ 97%] 1344s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_message_regex_searchstring PASSED [ 97%] 1344s tests/translate/tools/test_pogrep.py::TestPOGrep::test_keep_translations PASSED [ 97%] 1344s tests/translate/tools/test_pogrep.py::TestPOGrep::test_unicode_normalise PASSED [ 97%] 1344s tests/translate/tools/test_pogrep.py::TestXLiffGrep::test_simplegrep PASSED [ 97%] 1344s tests/translate/tools/test_pomerge.py::test_str2bool PASSED [ 97%] 1344s tests/translate/tools/test_pomerge.py::TestPOMerge::test_mergesore_bad_data PASSED [ 97%] 1344s tests/translate/tools/test_pomerge.py::TestPOMerge::test_simplemerge PASSED [ 97%] 1344s tests/translate/tools/test_pomerge.py::TestPOMerge::test_simplemerge_no_locations PASSED [ 97%] 1344s tests/translate/tools/test_pomerge.py::TestPOMerge::test_replacemerge PASSED [ 97%] 1344s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_blanks PASSED [ 97%] 1344s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_fuzzies PASSED [ 97%] 1344s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_locations PASSED [ 97%] 1344s tests/translate/tools/test_pomerge.py::TestPOMerge::test_unit_missing_in_template_with_locations PASSED [ 98%] 1344s tests/translate/tools/test_pomerge.py::TestPOMerge::test_unit_missing_in_template_no_locations PASSED [ 98%] 1344s tests/translate/tools/test_pomerge.py::TestPOMerge::test_reflowed_source_comments PASSED [ 98%] 1344s tests/translate/tools/test_pomerge.py::TestPOMerge::test_comments_with_blank_lines PASSED [ 98%] 1344s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merge_dont_delete_unassociated_comments PASSED [ 98%] 1344s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_trailing_newlines PASSED [ 98%] 1344s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_minor_start_and_end_of_sentence_changes PASSED [ 98%] 1344s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_format_last_entry_in_a_file PASSED [ 98%] 1344s tests/translate/tools/test_pomerge.py::TestPOMerge::test_escape_tabs XFAIL [ 98%] 1344s tests/translate/tools/test_pomerge.py::TestPOMerge::test_preserve_comments_layout PASSED [ 98%] 1344s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merge_dos2unix PASSED [ 98%] 1344s tests/translate/tools/test_pomerge.py::TestPOMerge::test_xliff_into_xliff PASSED [ 98%] 1344s tests/translate/tools/test_pomerge.py::TestPOMerge::test_po_into_xliff PASSED [ 98%] 1344s tests/translate/tools/test_pomerge.py::TestPOMerge::test_xliff_into_po PASSED [ 98%] 1344s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_dont_merge_kde_comments_found_in_translation PASSED [ 98%] 1344s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_untranslated_with_kde_disambiguation PASSED [ 98%] 1344s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_header_entries PASSED [ 98%] 1344s tests/translate/tools/test_pomerge.py::TestPOMerge::test_merging_different_locations PASSED [ 98%] 1344s tests/translate/tools/test_posegment.py::TestPOSegment::test_en_ja_simple PASSED [ 98%] 1344s tests/translate/tools/test_posegment.py::TestPOSegment::test_en_ja_punctuation PASSED [ 98%] 1344s tests/translate/tools/test_poterminology.py::TestPOTerminology::test_term_extraction PASSED [ 98%] 1344s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_pretranslatepo_blank PASSED [ 98%] 1344s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_simple PASSED [ 98%] 1344s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_messages_marked_fuzzy PASSED [ 98%] 1344s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_plurals_with_fuzzy_matching PASSED [ 98%] 1344s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgid_change XFAIL [ 98%] 1344s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_location_change PASSED [ 98%] 1344s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_location_and_whitespace_change PASSED [ 98%] 1344s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_accelerator_changes XFAIL [ 98%] 1344s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_lines_cut_differently XFAIL [ 98%] 1344s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_automatic_comments_dont_duplicate PASSED [ 98%] 1344s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_automatic_comments_new_overides_old PASSED [ 98%] 1344s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_comments_with_blank_comment_lines PASSED [ 98%] 1344s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_empty_commentlines PASSED [ 99%] 1344s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgidcomments PASSED [ 99%] 1344s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_plurals PASSED [ 99%] 1344s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_resurect_obsolete_messages PASSED [ 99%] 1344s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_comments PASSED [ 99%] 1344s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_typecomments PASSED [ 99%] 1344s tests/translate/tools/test_pretranslate.py::TestPretranslate::test_xliff_states PASSED [ 99%] 1344s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_pretranslatepo_blank PASSED [ 99%] 1344s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_simple PASSED [ 99%] 1344s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_messages_marked_fuzzy PASSED [ 99%] 1344s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_plurals_with_fuzzy_matching PASSED [ 99%] 1345s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgid_change XFAIL [ 99%] 1345s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_location_change PASSED [ 99%] 1345s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_location_and_whitespace_change PASSED [ 99%] 1345s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_accelerator_changes XFAIL [ 99%] 1345s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_lines_cut_differently XFAIL [ 99%] 1345s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_automatic_comments_dont_duplicate PASSED [ 99%] 1345s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_automatic_comments_new_overides_old PASSED [ 99%] 1345s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_comments_with_blank_comment_lines PASSED [ 99%] 1345s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_empty_commentlines PASSED [ 99%] 1345s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgidcomments PASSED [ 99%] 1345s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_plurals PASSED [ 99%] 1345s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_resurect_obsolete_messages PASSED [ 99%] 1345s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_comments PASSED [ 99%] 1345s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_typecomments PASSED [ 99%] 1345s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_xliff_states PASSED [ 99%] 1345s tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_help PASSED [ 99%] 1345s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPo::test_single_po PASSED [ 99%] 1345s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPo::test_plural_po PASSED [ 99%] 1345s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_single_po PASSED [ 99%] 1345s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_plural_po PASSED [ 99%] 1345s tests/translate/tools/test_pypo2phppo.py::TestPyPo2PhpPoCommand::test_help PASSED [ 99%] 1345s tests/xliff_conformance/test_xliff_conformance.py::test_open_office_to_xliff PASSED [ 99%] 1345s tests/xliff_conformance/test_xliff_conformance.py::test_po_to_xliff PASSED [100%] 1345s 1345s =============================== warnings summary =============================== 1345s tests/translate/storage/test_cpo.py:15 1345s Warning: 1345s Module 'translate.storage.cpo' was found, but when imported by pytest it raised: 1345s ImportError('gettext PO library not found') 1345s In pytest 9.1 this warning will become an error by default. 1345s You can fix the underlying problem, or alternatively overwrite this behavior and silence this warning by passing exc_type=ImportError explicitly. 1345s See https://docs.pytest.org/en/stable/deprecations.html#pytest-importorskip-default-behavior-regarding-importerror 1345s 1345s tests/odf_xliff/test_odf_xliff.py::test_roundtrip 1345s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.5UDgDC/autopkgtest_tmp/tests/odf_xliff/test_2.odt'> 1345s Enable tracemalloc to get traceback where the object was allocated. 1345s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1345s 1345s tests/translate/convert/test_android2po.py::TestAndroid2POCommand::test_convertandroid 1345s Warning: unclosed file <_io.TextIOWrapper name='TestAndroid2POCommand_test_convertandroid/en.po' mode='r' encoding='UTF-8'> 1345s Enable tracemalloc to get traceback where the object was allocated. 1345s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1345s 1345s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder 1345s tests/translate/convert/test_csv2po.py::TestCSV2POCommand::test_columnorder 1345s Warning: unclosed file <_io.TextIOWrapper name='TestCSV2POCommand_test_columnorder/test.po' mode='r' encoding='UTF-8'> 1345s Enable tracemalloc to get traceback where the object was allocated. 1345s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1345s 1345s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_pot 1345s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_pot/simple.pot'> 1345s Enable tracemalloc to get traceback where the object was allocated. 1345s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1345s 1345s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_simple_po 1345s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_po 1345s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_po/simple.po'> 1345s Enable tracemalloc to get traceback where the object was allocated. 1345s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1345s 1345s tests/translate/convert/test_oo2po.py::TestOO2POCommand::test_remove_duplicates 1345s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_remove_duplicates/simple.po'> 1345s Enable tracemalloc to get traceback where the object was allocated. 1345s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1345s 1345s tests/translate/convert/test_oo2xliff.py::TestOO2POCommand::test_simple_xlf 1345s Warning: unclosed file <_io.BufferedReader name='TestOO2POCommand_test_simple_xlf/simple.xlf'> 1345s Enable tracemalloc to get traceback where the object was allocated. 1345s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1345s 1345s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder 1345s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_columnorder 1345s Warning: unclosed file <_io.TextIOWrapper name='TestPO2CSVCommand_test_columnorder/test.csv' mode='r' encoding='UTF-8'> 1345s Enable tracemalloc to get traceback where the object was allocated. 1345s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1345s 1345s tests/translate/convert/test_po2csv.py::TestPO2CSVCommand::test_context 1345s Warning: unclosed file <_io.TextIOWrapper name='TestPO2CSVCommand_test_context/test.csv' mode='r' encoding='UTF-8'> 1345s Enable tracemalloc to get traceback where the object was allocated. 1345s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1345s 1345s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_missing 1345s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_no_accesskey 1345s tests/translate/convert/test_po2dtd.py::TestPO2DTD::test_accesskey_and_amp_case_amp_no_accesskey 1345s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_missing 1345s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_no_accesskey 1345s tests/translate/convert/test_po2dtd.py::TestPO2DTDCommand::test_accesskey_and_amp_case_amp_no_accesskey 1345s Warning: Could not find accesskey for key.accesskey 1345s 1345s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified 1345s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file 1345s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_recursive_templates_with_single_po_file_and_templates_overwritten 1345s Warning: unclosed file <_io.BufferedReader name='translation/file1.po'> 1345s Enable tracemalloc to get traceback where the object was allocated. 1345s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1345s 1345s tests/translate/convert/test_po2html.py::TestPO2HtmlCommand::test_no_template_specified 1345s Warning: unclosed file <_io.BufferedWriter name='translated/file1.html'> 1345s Enable tracemalloc to get traceback where the object was allocated. 1345s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1345s 1345s tests/translate/convert/test_po2idml.py::TestPo2IDMLCommand::test_convert 1345s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.5UDgDC/autopkgtest_tmp/tests/translate/convert/test.idml'> 1345s Enable tracemalloc to get traceback where the object was allocated. 1345s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1345s 1345s tests/translate/convert/test_po2md.py::TestPO2MD::test_directory_of_markdown_files_with_single_po 1345s Warning: unclosed file <_io.BufferedReader name='translation.po'> 1345s Enable tracemalloc to get traceback where the object was allocated. 1345s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1345s 1345s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_escape 1345s Warning: unclosed file <_io.FileIO name='input.oo' mode='rb' closefd=True> 1345s Enable tracemalloc to get traceback where the object was allocated. 1345s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1345s 1345s tests/translate/convert/test_po2oo.py::TestPO2OOCommand::test_roundtrip_escape 1345s Warning: unclosed file <_io.FileIO name='output.oo' mode='wb' closefd=True> 1345s Enable tracemalloc to get traceback where the object was allocated. 1345s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1345s 1345s tests/translate/convert/test_po2prop.py::TestPO2Prop::test_mozilla_accesskeys_missing_accesskey 1345s tests/translate/convert/test_po2prop.py::TestPO2PropCommand::test_mozilla_accesskeys_missing_accesskey 1345s Warning: Could not find accesskey for prop.accesskey 1345s 1345s tests/translate/convert/test_po2tmx.py: 26 warnings 1345s tests/translate/filters/test_pofilter.py: 13 warnings 1345s tests/translate/storage/test_tbx.py: 17 warnings 1345s tests/translate/storage/test_tmx.py: 24 warnings 1345s 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' 1345s 1345s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert 1345s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert/simple.po'> 1345s Enable tracemalloc to get traceback where the object was allocated. 1345s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1345s 1345s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf16 1345s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_utf16/simple.po'> 1345s Enable tracemalloc to get traceback where the object was allocated. 1345s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1345s 1345s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 1345s Warning: unclosed file <_io.BufferedWriter name='simple.po'> 1345s Enable tracemalloc to get traceback where the object was allocated. 1345s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1345s 1345s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 1345s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_wrong 1345s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_wrong/simple.po'> 1345s Enable tracemalloc to get traceback where the object was allocated. 1345s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1345s 1345s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_convert_encoding_utf8 1345s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_convert_encoding_utf8/simple.po'> 1345s Enable tracemalloc to get traceback where the object was allocated. 1345s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1345s 1345s tests/translate/convert/test_rc2po.py::TestRC2POCommand::test_menuex 1345s Warning: unclosed file <_io.BufferedReader name='TestRC2POCommand_test_menuex/simple.po'> 1345s Enable tracemalloc to get traceback where the object was allocated. 1345s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1345s 1345s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_pot 1345s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_simple_pot/simple.pot'> 1345s Enable tracemalloc to get traceback where the object was allocated. 1345s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1345s 1345s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_simple_po 1345s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_simple_po/simple.po'> 1345s Enable tracemalloc to get traceback where the object was allocated. 1345s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1345s 1345s tests/translate/convert/test_resx2po.py::TestRESX2POCommand::test_remove_duplicates 1345s Warning: unclosed file <_io.BufferedReader name='TestRESX2POCommand_test_remove_duplicates/simple.po'> 1345s Enable tracemalloc to get traceback where the object was allocated. 1345s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1345s 1345s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert 1345s Warning: unclosed file <_io.BufferedWriter name='simple.odt'> 1345s Enable tracemalloc to get traceback where the object was allocated. 1345s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1345s 1345s tests/translate/convert/test_xliff2odf.py::TestXLIFF2ODFommand::test_convert 1345s Warning: unclosed file <_io.BufferedReader name='/tmp/autopkgtest.5UDgDC/autopkgtest_tmp/tests/translate/convert/test.odt'> 1345s Enable tracemalloc to get traceback where the object was allocated. 1345s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1345s 1345s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_preserve_filename 1345s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_preserve_filename/snippet.xlf'> 1345s Enable tracemalloc to get traceback where the object was allocated. 1345s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1345s 1345s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_pot 1345s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_simple_pot/simple.pot'> 1345s Enable tracemalloc to get traceback where the object was allocated. 1345s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1345s 1345s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_simple_po 1345s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_simple_po/simple.po'> 1345s Enable tracemalloc to get traceback where the object was allocated. 1345s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1345s 1345s tests/translate/convert/test_xliff2po.py::TestXLIFF2POCommand::test_remove_duplicates 1345s Warning: unclosed file <_io.BufferedReader name='TestXLIFF2POCommand_test_remove_duplicates/simple.po'> 1345s Enable tracemalloc to get traceback where the object was allocated. 1345s See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. 1345s 1345s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting 1345s Warning: DTD parse error: :1:36:FATAL:PARSER:ERR_ENTITY_NOT_FINISHED: xmlParseEntityDecl: entity test.me not terminated 1345s 1345s tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting 1345s Warning: DTD file '' does not validate 1345s 1345s -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html 1345s --------------------------- snapshot report summary ---------------------------- 1345s 23 snapshots passed. 1345s =========================== short test summary info ============================ 1345s SKIPPED [1] tests/translate/storage/test_cpo.py:15: could not import 'translate.storage.cpo': gettext PO library not found 1345s SKIPPED [1] tests/translate/storage/test_fluent.py:29: could not import 'translate.storage.fluent': No module named 'fluent' 1345s SKIPPED [1] tests/translate/filters/test_checks.py:1429: Spell checking for af is not available 1345s XFAIL tests/translate/convert/test_dtd2po.py::TestDTD2PO::test_accelerator_keys_not_in_sentence - Not Implemented 1345s XFAIL tests/translate/convert/test_dtd2po.py::TestDTD2POCommand::test_accelerator_keys_not_in_sentence - Not Implemented 1345s XFAIL tests/translate/convert/test_po2php.py::TestPO2Php::test_merging_propertyless_template - Need to review if we want this behaviour 1345s XFAIL tests/translate/convert/test_po2php.py::TestPO2PhpCommand::test_merging_propertyless_template - Need to review if we want this behaviour 1345s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_msgid_change - Not implemented - review if this is even correct 1345s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_merging_accelerator_changes - Not Implemented - needs review 1345s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2PO::test_lines_cut_differently - Not Implemented - review if this is even correct 1345s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_msgid_change - Not implemented - review if this is even correct 1345s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_merging_accelerator_changes - Not Implemented - needs review 1345s XFAIL tests/translate/convert/test_pot2po.py::TestPOT2POCommand::test_lines_cut_differently - Not Implemented - review if this is even correct 1345s XFAIL tests/translate/convert/test_yaml2po.py::TestYAML2PO::test_no_duplicates - This is invalid YAML document 1345s XFAIL tests/translate/convert/test_yaml2po.py::TestYAML2POCommand::test_no_duplicates - This is invalid YAML document 1345s XFAIL tests/translate/filters/test_checks.py::test_acceleratedvariables - Accelerated variables needs a better implementation 1345s XFAIL tests/translate/filters/test_checks.py::test_musttranslatewords - FIXME: All fails() tests are not working 1345s XFAIL tests/translate/filters/test_checks.py::test_persian_single_and_double_quote_fail_at_the_same_time - Bug #3408 1345s XFAIL tests/translate/filters/test_checks.py::test_bengali_mozilla_inverted_xmltags - Bug #3506 1345s 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. 1345s XFAIL tests/translate/storage/placeables/test_base.py::TestConverters::test_to_general_placeables - Test needs fixing, disabled for now 1345s XFAIL tests/translate/storage/placeables/test_base.py::TestConverters::test_to_xliff_placeables - Test needs fixing, disabled for now 1345s XFAIL tests/translate/storage/test_dtd.py::test_quotefordtd_unimplemented_cases - Not Implemented 1345s XFAIL tests/translate/storage/test_dtd.py::test_unquotefromdtd_unimplemented_cases - Not Implemented 1345s XFAIL tests/translate/storage/test_dtd.py::TestDTD::test_comment_following - Not Implemented 1345s XFAIL tests/translate/storage/test_dtd.py::TestDTD::test_invalid_quoting - Not Implemented 1345s 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 1345s XFAIL tests/translate/storage/test_po.py::TestPOFile::test_kde_plurals - Not Implemented 1345s XFAIL tests/translate/storage/test_po.py::TestPOFile::test_makeobsolete_untranslated - Check differing behaviours between pypo and cpo 1345s XFAIL tests/translate/storage/test_po.py::TestPOFile::test_wrap_parenthesis - Incompatible wrapping with gettext, see #5251 1345s XFAIL tests/translate/storage/test_properties.py::TestXWikiFullPage::test_remove - removal not working in full page 1345s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_kde_plurals - Not Implemented 1345s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_makeobsolete_untranslated - Check differing behaviours between pypo and cpo 1345s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_wrap_parenthesis - Incompatible wrapping with gettext, see #5251 1345s XFAIL tests/translate/storage/test_pypo.py::TestPYPOFile::test_mixed_newlines_typecomment - Not sure if this can not be parsed gracefully 1345s XFAIL tests/translate/storage/test_subtitles.py::TestSubtitleUnit::test_note_sanity - Not Implemented 1345s XFAIL tests/translate/tools/test_pocount.py::TestCount::test_plurals_kde - Support commented out pending removal 1345s XFAIL tests/translate/tools/test_pomerge.py::TestPOMerge::test_escape_tabs - Not Implemented 1345s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_msgid_change - Not Implemented 1345s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_merging_accelerator_changes - Not Implemented 1345s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslate::test_lines_cut_differently - Not Implemented 1345s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_msgid_change - Not Implemented 1345s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_merging_accelerator_changes - Not Implemented 1345s XFAIL tests/translate/tools/test_pretranslate.py::TestPretranslateCommand::test_lines_cut_differently - Not Implemented 1345s ========== 3298 passed, 3 skipped, 41 xfailed, 127 warnings in 16.53s ========== 1346s autopkgtest [11:46:17]: test python3-translate-commands: -----------------------] 1346s autopkgtest [11:46:17]: test python3-translate-commands: - - - - - - - - - - results - - - - - - - - - - 1346s python3-translate-commands PASS 1346s autopkgtest [11:46:17]: @@@@@@@@@@@@@@@@@@@@ summary 1346s translate-toolkit PASS 1346s python3-translate PASS 1346s python3-translate-commands PASS 1357s nova [W] Skipping flock for amd64 1357s Creating nova instance adt-plucky-amd64-translate-toolkit-20241030-112351-juju-7f2275-prod-proposed-migration-environment-14-38b08e01-fa28-4a1c-aa77-ce799fd62308 from image adt/ubuntu-plucky-amd64-server-20241029.img (UUID 38cf62dc-8d54-4e4f-bcab-db8084c89f55)... 1357s nova [W] Skipping flock for amd64 1357s Creating nova instance adt-plucky-amd64-translate-toolkit-20241030-112351-juju-7f2275-prod-proposed-migration-environment-14-38b08e01-fa28-4a1c-aa77-ce799fd62308 from image adt/ubuntu-plucky-amd64-server-20241029.img (UUID 38cf62dc-8d54-4e4f-bcab-db8084c89f55)... 1357s nova [W] Skipping flock for amd64 1357s Creating nova instance adt-plucky-amd64-translate-toolkit-20241030-112351-juju-7f2275-prod-proposed-migration-environment-14-38b08e01-fa28-4a1c-aa77-ce799fd62308 from image adt/ubuntu-plucky-amd64-server-20241029.img (UUID 38cf62dc-8d54-4e4f-bcab-db8084c89f55)...