Project

General

Profile

Bug #16976

Run Dogtail using Python 3

Added by intrigeri 3 months ago. Updated 3 months ago.

Status:
Resolved
Priority:
Normal
Assignee:
-
Category:
Test suite
Target version:
Start date:
Due date:
% Done:

100%

Feature Branch:
test/16004-adapt-usb-scenarios-to-usb-images+force-all-tests
Type of work:
Code
Blueprint:
Starter:
Affected tool:

Description

Currently we install python-dogtail, which uses Python 2 and makes it impossible to deal with objects containing unicode character (e.g. "Save As…" — note the triple dots) aka. https://bugs.debian.org/728658. This was originally tracked on #12185 that got repurposed in the meantime.

Debian testing (Bullseye) now has 0.9.11-2 with a python3-dogtail binary package that should be installable on Stretch and Buster, and allow us to drop some ugly hacks from our test suite.

This is part of our #15953 roadmap item.


Related issues

Blocks Tails - Feature #8788: Automatically test the "Tails documentation" link on the Desktop In Progress 01/24/2015
Blocks Tails - Bug #15953: Make our test suite survive changes in the surrounding environment Confirmed 09/14/2018
Blocked by Tails - Feature #12185: Update Debian package to run Dogtail using Python 3 Resolved 01/28/2017
Blocks Tails - Feature #16209: Core work: Foundations Team Confirmed
Blocked by Tails - Bug #16004: Make our automated test suite take into account USB image updates wrt. supported installation & update methods Resolved 09/28/2018

Associated revisions

Revision 2ded9055 (diff)
Added by intrigeri 3 months ago

Test suite: install Dogtail from Bullseye and run it with Python 3 (refs: #16976)

This will give us UTF-8 support.

Note the switch from raw bytes IO to StringIO: the equivalent of what we used to
do in Python 3 is io.BytesIO(), but that won't work out of the box: the code
we're running prints strings on stdout/stderr, not bytes, and Python 3 knows
the difference. So accordingly, remove decoding of the output, since we get
a string already.

Drop anonym's "showingOnly" patch that was merged upstream :)

Revision 3d8a965c
Added by segfault 3 months ago

Merge branch 'test/16004-adapt-usb-scenarios-to-usb-images+force-all-tests' into devel (Closes: #16004, #16976)

History

#1 Updated by intrigeri 3 months ago

  • Blocks Feature #8788: Automatically test the "Tails documentation" link on the Desktop added

#2 Updated by intrigeri 3 months ago

  • Blocks Bug #15953: Make our test suite survive changes in the surrounding environment added

#3 Updated by intrigeri 3 months ago

  • Blocked by Feature #12185: Update Debian package to run Dogtail using Python 3 added

#4 Updated by intrigeri 3 months ago

#5 Updated by intrigeri 3 months ago

  • Description updated (diff)

#6 Updated by intrigeri 3 months ago

I'm giving it a quick try as while working on #16004, I'm fed up that my workaround to the lack of UTF-8 support (using Sikuli in the middle of a scenario that otherwise nicely uses Dogtail) is brittle on Jenkins, while it Works On My Machine™. Over the last two days I had to add 3 new such workarounds and I figured that enough was enough.

I'm not promising anything at this point though, so I won't even assign this ticket to myself.

#7 Updated by intrigeri 3 months ago

  • Status changed from Confirmed to In Progress
  • Assignee set to intrigeri
  • Target version changed from 2019 to Tails_4.0
  • Feature Branch set to test/16004-adapt-usb-scenarios-to-usb-images

OK, it was not that hard. Will batch this in my branch for #16004.

#8 Updated by intrigeri 3 months ago

  • Blocked by Bug #16004: Make our automated test suite take into account USB image updates wrt. supported installation & update methods added

#9 Updated by intrigeri 3 months ago

  • Feature Branch changed from test/16004-adapt-usb-scenarios-to-usb-images to test/16004-adapt-usb-scenarios-to-usb-images+force-all-tests

#10 Updated by intrigeri 3 months ago

  • Status changed from In Progress to Needs Validation
  • Assignee changed from intrigeri to anonym

@anonym, same as #16004#note-68.

#11 Updated by intrigeri 3 months ago

  • Assignee deleted (anonym)

(anonym encouraged me to look for other reviewers.)

#12 Updated by segfault 3 months ago

  • Status changed from Needs Validation to Resolved
  • % Done changed from 0 to 100

Also available in: Atom PDF