Project

General

Profile

Actions

action #133451

closed

Backend dies when passing non-US-keyboard letters to the 'type_string' function size:M

Added by okurz over 1 year ago. Updated over 1 year ago.

Status:
Resolved
Priority:
Normal
Assignee:
Category:
Feature requests
Target version:
Start date:
2023-07-25
Due date:
2023-08-11
% Done:

0%

Estimated time:

Description

Motivation

The backend process dies after passing russian language characters to the 'type_string' function, see #133319

Acceptance criteria

  • AC1: os-autoinst provides explicit feedback about language support, either proper unicode support or clear error message

Suggestions

  • Read how https://github.com/os-autoinst/os-autoinst/tree/master/consoles/VNC.pm currently works
  • Read qemu docs about emulated keyboards because that is what is important for what we need to pass to the test systems
  • Of course don't add support for individual characters. Try to provide a generic support (or "more generic"). If not possible then at least provide a clear error message what encodings or what keyboard keys are supported
  • If no better solution is found fall back to plain old try/catch and "unknown letter" error message
  • Check pending PRs for extending support for other keyboard layouts

Related issues 2 (2 open0 closed)

Copied from openQA Project (public) - action #133319: Backend dies when passing russian letters to the 'type_string' functionNew2023-07-25

Actions
Copied to openQA Project (public) - action #133613: Support for passing non-US-keyboard letters to the 'type_string' function size:MNew

Actions
Actions #1

Updated by okurz over 1 year ago

  • Copied from action #133319: Backend dies when passing russian letters to the 'type_string' function added
Actions #2

Updated by okurz over 1 year ago

  • Subject changed from Backend dies when passing russian letters to the 'type_string' function to Backend dies when passing non-US-keyboard letters to the 'type_string' function size:M
Actions #3

Updated by livdywan over 1 year ago

  • Status changed from Workable to In Progress
  • Assignee set to livdywan

I'll be doing some reading first. Let's see what seems feasible.

Actions #4

Updated by openqa_review over 1 year ago

  • Due date set to 2023-08-11

Setting due date based on mean cycle time of SUSE QE Tools

Actions #5

Updated by tinita over 1 year ago

I played a bit to get familiar with how this is currently working.
So far I wasn't even manually able to send a german umlaut, e.g. "ä".
In the function consoles::VNC::map_and_send_key I added push @events, (195, 164); because that's the bytes for ä ("\303\244"), and that's also what xev is telling me.
I added -k de to the qemu-system-x86_64 arguments in backend::qemu::start_qemu.
Things like systemctl showed up as szstemctl as expected, but I wasn't able to find out which keycode to send for ä.

Actions #6

Updated by okurz over 1 year ago

  • Copied to action #133613: Support for passing non-US-keyboard letters to the 'type_string' function size:M added
Actions #7

Updated by okurz over 1 year ago

  • Description updated (diff)

As discussed I split out the actual support for non-US keyboards to #133613

Actions #8

Updated by livdywan over 1 year ago

I opened a PR to clarify the error message. We concluded it's best to be clear on what's supported in practice.

Actions #9

Updated by tinita over 1 year ago

Actions #10

Updated by livdywan over 1 year ago

  • Status changed from In Progress to Feedback

Both PRs got merged, let's see that this has no surprising consequences once deployed

Actions #11

Updated by livdywan over 1 year ago

  • Status changed from Feedback to Resolved

livdywan wrote:

Both PRs got merged, let's see that this has no surprising consequences once deployed

I think we're good here

Actions

Also available in: Atom PDF