wpt icon indicating copy to clipboard operation
wpt copied to clipboard

[WebDriver] update input key codepoint tests

Open sadym-chromium opened this issue 1 year ago • 4 comments

According to step 6 of Test the input key single codepoint.:

  1. If key is not a String containing a single unicode code point or grapheme cluster? return error with error code invalid argument.

The "or grapheme cluster?" is not specified, so aligning the tests with the spec.

Alternatively, this tests can be marked as tentative until the spec is updated.

sadym-chromium avatar May 02 '24 08:05 sadym-chromium

Uh oh! Looks like an error! Details

Client ID static/taskcluster/github does not have sufficient scopes and is missing the following scopes:

{
  "AnyOf": [
    "queue:rerun-task:taskcluster-github/XdosDrmLTw6eZCA1YJcTYA/Z901UEuJQ7avNQBcVvQkGA",
    "queue:rerun-task-in-project:none",
    {
      "AllOf": [
        "queue:rerun-task",
        "assume:scheduler-id:taskcluster-github/XdosDrmLTw6eZCA1YJcTYA"
      ]
    }
  ]
}

This request requires the client to satisfy the following scope expression:

{
  "AnyOf": [
    "queue:rerun-task:taskcluster-github/XdosDrmLTw6eZCA1YJcTYA/Z901UEuJQ7avNQBcVvQkGA",
    "queue:rerun-task-in-project:none",
    {
      "AllOf": [
        "queue:rerun-task",
        "assume:scheduler-id:taskcluster-github/XdosDrmLTw6eZCA1YJcTYA"
      ]
    }
  ]
}

  • method: rerunTask
  • errorCode: InsufficientScopes
  • statusCode: 403
  • time: 2024-05-02T09:38:08.462Z

Uh oh! Looks like an error! Details

Client ID static/taskcluster/github does not have sufficient scopes and is missing the following scopes:

{
  "AnyOf": [
    "queue:rerun-task:taskcluster-github/XdosDrmLTw6eZCA1YJcTYA/Z901UEuJQ7avNQBcVvQkGA",
    "queue:rerun-task-in-project:none",
    {
      "AllOf": [
        "queue:rerun-task",
        "assume:scheduler-id:taskcluster-github/XdosDrmLTw6eZCA1YJcTYA"
      ]
    }
  ]
}

This request requires the client to satisfy the following scope expression:

{
  "AnyOf": [
    "queue:rerun-task:taskcluster-github/XdosDrmLTw6eZCA1YJcTYA/Z901UEuJQ7avNQBcVvQkGA",
    "queue:rerun-task-in-project:none",
    {
      "AllOf": [
        "queue:rerun-task",
        "assume:scheduler-id:taskcluster-github/XdosDrmLTw6eZCA1YJcTYA"
      ]
    }
  ]
}

  • method: rerunTask
  • errorCode: InsufficientScopes
  • statusCode: 403
  • time: 2024-05-02T09:42:58.397Z

Manually adding discussion from https://www.w3.org/wiki/WebDriver/2024-05-BiDi#Agenda minuted in IRC but was not written here:

sadym: classic doesnt specify if we should follow grapheme clusters. There is a placeholder issue. I would like to make a decision here and either update tests or remove it? gsnedders: this feels a little nebulous here. Grapheme clusters can vary a lot https://www.unicode.org/versions/Unicode9.0.0/ch03.pdf#G2213 jgraham: this is defined in unicode but the fundamental issue is how much do we want to care about sendKey to map to 1 key gsnedders: https://www.unicode.org/reports/tr29/#Grapheme_Cluster_Boundaries — which defines a bunch of different algorithms to generating grapheme clusters, but also: "These algorithms can be adapted to produce tailored grapheme clusters for specific locales or other customizations, such as the contractions used in collation tailoring tables." The question here is "as a user" would you be able to do this as keypress or via composition events sadym: from the user point of view. we have an api in classic sendkeys which doesn't exist in bidi which takes the string and splits it and does the event handling jgraham: yes. do we want to model this as 1 key press or composition? I think for simplicity we want to have this as 1 key press. This is what the IME. stuff would ggive us if we implemented it sadym: so the next question. do we want graphemes or any number of symbols jgraham: I don't think we want to allow people to type any number of chars here e.g. how would abc be handled in a form? one keypress doesnt make sense but a b c sadym: so the summary is we want to support graphemes? jgraham: yes that makes sense but we need gsnedders to give an opinion here gsnedders: I think we do what ever appkit does here gsnedders: I don't want a scenario where webdriver sends keystrokes that safari cant handle action: gsnedders to get back to sadym on what happens in this scenario with appkit

sadym-chromium avatar May 16 '24 08:05 sadym-chromium

Closing in favor of https://github.com/web-platform-tests/wpt/pull/46301

sadym-chromium avatar May 16 '24 12:05 sadym-chromium