@uuv/runner-commons 2.58.0 → 2.59.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,11 @@
1
+ # [2.59.0](https://github.com/e2e-test-quest/uuv/compare/runner-commons-v2.58.0...runner-commons-v2.59.0) (2025-07-27)
2
+
3
+
4
+ ### Features
5
+
6
+ * add combo box select sentence and sentences to check form value, [#1060](https://github.com/e2e-test-quest/uuv/issues/1060) [#1061](https://github.com/e2e-test-quest/uuv/issues/1061) ([4f93339](https://github.com/e2e-test-quest/uuv/commit/4f933390169b70ddade10ce4f46ba65a971e8374))
7
+ * add funding, [#1065](https://github.com/e2e-test-quest/uuv/issues/1065) ([c569086](https://github.com/e2e-test-quest/uuv/commit/c5690862b920f12e12d815ff1217d2a1b535acab))
8
+
1
9
  # [2.58.0](https://github.com/e2e-test-quest/uuv/compare/runner-commons-v2.57.0...runner-commons-v2.58.0) (2025-07-23)
2
10
 
3
11
 
package/README.md CHANGED
@@ -75,6 +75,20 @@ or [@uuv/assistant](https://www.npmjs.com/package/@uuv/assistant).
75
75
 
76
76
  This project is licensed under the terms of the [MIT license](https://github.com/e2e-test-quest/uuv/blob/main/LICENSE).
77
77
 
78
+ ## Support UUV through Open Collective
79
+
80
+ If you want to help UUV grow, you can fund the project directly via [Open Collective](https://opencollective.com/uuv).
81
+ Every contribution helps us dedicate more time and energy to improving this open-source tool.
82
+
83
+ <a href="https://opencollective.com/uuv/contribute" target="_blank">
84
+ <img src="https://opencollective.com/uuv/contribute/button@2x.png?color=blue" width=300 />
85
+ </a>
86
+
87
+
88
+ Interested in becoming a sponsor?
89
+ We welcome sponsorships of all sizes!
90
+ Contact us via [GitHub](https://github.com/e2e-test-quest/uuv/discussions) or through [Open Collective](https://opencollective.com/uuv) to discuss opportunities.
91
+
78
92
  ## Authors
79
93
 
80
94
  - [@luifr10](https://github.com/luifr10)
@@ -42,6 +42,12 @@
42
42
  "wording": "I should see $indefiniteArticle $roleName named {string} and containing {string}",
43
43
  "section": "contains"
44
44
  },
45
+ {
46
+ "key": "key.then.element.withRoleAndNameAndValue",
47
+ "description": "Checks that an Form element(input) exists with the specified [accessible role](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles#aria_role_types), [name](https://russmaxdesign.github.io/html-elements-names/) and specified value",
48
+ "wording": "I should see $indefiniteArticle $roleName named {string} with value {string}",
49
+ "section": "contains"
50
+ },
45
51
  {
46
52
  "key": "key.then.element.withRoleAndNameAndContentDisabled",
47
53
  "description": "Checks that an Html element exists with the specified [accessible role](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles#aria_role_types), [name](https://russmaxdesign.github.io/html-elements-names/) and content, and with the disabled attribute set to true",
@@ -59,7 +59,7 @@ exports.EN_ROLES = [
59
59
  { id: "cell", name: "cell" },
60
60
  { id: "checkbox", name: "checkbox", shouldGenerateKeyboardSentence: true, shouldGenerateCheckedSentence: true, shouldGenerateClickSentence: true },
61
61
  { id: "columnheader", name: "column header" },
62
- { id: "combobox", name: "combo box", shouldGenerateKeyboardSentence: true, shouldGenerateClickSentence: true },
62
+ { id: "combobox", name: "combo box", shouldGenerateTypeSentence: false, shouldGenerateKeyboardSentence: true, shouldGenerateClickSentence: true },
63
63
  { id: "command", name: "command" },
64
64
  { id: "comment", name: "comment" },
65
65
  { id: "complementary", name: "complementary" },
@@ -39,6 +39,11 @@
39
39
  "description": "Writes the sentence passed as a parameter (useful for example to fill in a form field).<br/>Make sure you've selected an element beforehand with the <strong>within...</strong> phrases.",
40
40
  "wording": "I enter the value {string}"
41
41
  },
42
+ {
43
+ "key": "key.when.select.withContext",
44
+ "description": "Select the combo box option passed as a parameter (useful for example to fill in a combobox form field).<br/>Make sure you've selected a combo box element beforehand with the <strong>within a combo box named 'yourComboboxNamee'</strong> phrases.",
45
+ "wording": "I select the value {string}"
46
+ },
42
47
  {
43
48
  "key": "key.when.keyboard.press",
44
49
  "description": "Press specified key: <table><thead><tr><th>Key</th><th>Description</th></tr></thead><tbody><tr><td>{tab}</td><td>Tabulation</td></tr><tr><td>{reverseTab}</td><td>Reverse tabulation</td></tr><tr><td>{down}</td><td>Arrow Down</td></tr><tr><td>{right}</td><td>Arrow Right</td></tr><tr><td>{left}</td><td>Arrow Left</td></tr><tr><td>{up}</td><td>Arrow Up</td></tr></tbody></table><br/>Make sure you've selected an element beforehand with the <strong>within...</strong> phrases.",
@@ -290,5 +295,15 @@
290
295
  "key": "key.then.a11y.rgaa.defaultWithResultContaining",
291
296
  "description": "Check that the current page have the following partial [result](https://accessibilite.numerique.gouv.fr/methode/criteres-et-tests/) based on RGAA standard",
292
297
  "wording": "I should have the following partial result based on the rgaa reference"
298
+ },
299
+ {
300
+ "key": "key.then.combobox.withNameValue",
301
+ "description": "Check that the current page have the following partial [result](https://accessibilite.numerique.gouv.fr/methode/criteres-et-tests/) based on RGAA standard",
302
+ "wording": "I should see a combo box named {string} with value {string}"
303
+ },
304
+ {
305
+ "key": "key.then.combobox.selectValue",
306
+ "description": "Check that the current page have the following partial [result](https://accessibilite.numerique.gouv.fr/methode/criteres-et-tests/) based on RGAA standard",
307
+ "wording": "I select the value {string} in the combo box named {string}"
293
308
  }
294
309
  ]
@@ -120,11 +120,12 @@ exports.FR_ROLES = [
120
120
  },
121
121
  {
122
122
  id: "combobox",
123
- name: "boîte à choix",
123
+ name: "liste déroulante",
124
124
  definiteArticle: FR_DEFINITE_ARTICLE.LA,
125
125
  indefiniteArticle: FR_INDEFINITE_ARTICLE.UNE,
126
126
  shouldGenerateKeyboardSentence: true,
127
- shouldGenerateClickSentence: true
127
+ shouldGenerateClickSentence: true,
128
+ shouldGenerateTypeSentence: false
128
129
  },
129
130
  {
130
131
  id: "command",
@@ -595,4 +596,4 @@ exports.FR_ROLES = [
595
596
  definiteArticle: FR_DEFINITE_ARTICLE.LA,
596
597
  indefiniteArticle: FR_INDEFINITE_ARTICLE.UNE
597
598
  }
598
- ].map((role) => new FrAccessibleRole(role.id, role.name, role.definiteArticle, role.indefiniteArticle, role.shouldGenerateClickSentence, role.shouldGenerateContainsSentence, role.shouldGenerateContainsSentence, role.shouldGenerateKeyboardSentence, role.shouldGenerateCheckedSentence));
599
+ ].map((role) => new FrAccessibleRole(role.id, role.name, role.definiteArticle, role.indefiniteArticle, role.shouldGenerateClickSentence, role.shouldGenerateTypeSentence, role.shouldGenerateContainsSentence, role.shouldGenerateKeyboardSentence, role.shouldGenerateCheckedSentence));
@@ -12,6 +12,9 @@
12
12
  "enter": {
13
13
  "withContext": ""
14
14
  },
15
+ "select": {
16
+ "withContext": ""
17
+ },
15
18
  "keyboard": {
16
19
  "multiplePress": "",
17
20
  "press": "",
@@ -53,6 +56,7 @@
53
56
  "withContent": "",
54
57
  "withRoleAndName": "",
55
58
  "withTestId": "",
59
+ "withRoleAndNameAndValue": "",
56
60
  "withRoleAndNameAndContent": "",
57
61
  "withRoleAndNameAndChecked": "",
58
62
  "withRoleAndNameAndUnchecked": "",
@@ -95,6 +99,10 @@
95
99
  "title": {
96
100
  "withNameAndLevel": ""
97
101
  },
102
+ "combobox": {
103
+ "withNameValue": "",
104
+ "selectValue": ""
105
+ },
98
106
  "attributes": {
99
107
  "withValues": ""
100
108
  },
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@uuv/runner-commons",
3
- "version": "2.58.0",
3
+ "version": "2.59.0",
4
4
  "type": "commonjs",
5
5
  "author": "Louis Fredice NJAKO MOLOM (https://github.com/luifr10) & Stanley SERVICAL (https://github.com/stanlee974)",
6
6
  "description": "A common lib for uuv",
@@ -81,5 +81,9 @@
81
81
  "lodash": "^4.17.21",
82
82
  "minimist": "1.2.8",
83
83
  "node-ipc": "^12.0.0"
84
+ },
85
+ "funding": {
86
+ "type": "opencollective",
87
+ "url": "https://opencollective.com/uuv"
84
88
  }
85
89
  }
@@ -42,6 +42,12 @@
42
42
  "wording": "I should see $indefiniteArticle $roleName named {string} and containing {string}",
43
43
  "section": "contains"
44
44
  },
45
+ {
46
+ "key": "key.then.element.withRoleAndNameAndValue",
47
+ "description": "Checks that an Form element(input) exists with the specified [accessible role](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles#aria_role_types), [name](https://russmaxdesign.github.io/html-elements-names/) and specified value",
48
+ "wording": "I should see $indefiniteArticle $roleName named {string} with value {string}",
49
+ "section": "contains"
50
+ },
45
51
  {
46
52
  "key": "key.then.element.withRoleAndNameAndContentDisabled",
47
53
  "description": "Checks that an Html element exists with the specified [accessible role](https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles#aria_role_types), [name](https://russmaxdesign.github.io/html-elements-names/) and content, and with the disabled attribute set to true",
@@ -39,6 +39,11 @@
39
39
  "description": "Writes the sentence passed as a parameter (useful for example to fill in a form field).<br/>Make sure you've selected an element beforehand with the <strong>within...</strong> phrases.",
40
40
  "wording": "I enter the value {string}"
41
41
  },
42
+ {
43
+ "key": "key.when.select.withContext",
44
+ "description": "Select the combo box option passed as a parameter (useful for example to fill in a combobox form field).<br/>Make sure you've selected a combo box element beforehand with the <strong>within a combo box named 'yourComboboxNamee'</strong> phrases.",
45
+ "wording": "I select the value {string}"
46
+ },
42
47
  {
43
48
  "key": "key.when.keyboard.press",
44
49
  "description": "Press specified key: <table><thead><tr><th>Key</th><th>Description</th></tr></thead><tbody><tr><td>{tab}</td><td>Tabulation</td></tr><tr><td>{reverseTab}</td><td>Reverse tabulation</td></tr><tr><td>{down}</td><td>Arrow Down</td></tr><tr><td>{right}</td><td>Arrow Right</td></tr><tr><td>{left}</td><td>Arrow Left</td></tr><tr><td>{up}</td><td>Arrow Up</td></tr></tbody></table><br/>Make sure you've selected an element beforehand with the <strong>within...</strong> phrases.",
@@ -290,5 +295,15 @@
290
295
  "key": "key.then.a11y.rgaa.defaultWithResultContaining",
291
296
  "description": "Check that the current page have the following partial [result](https://accessibilite.numerique.gouv.fr/methode/criteres-et-tests/) based on RGAA standard",
292
297
  "wording": "I should have the following partial result based on the rgaa reference"
298
+ },
299
+ {
300
+ "key": "key.then.combobox.withNameValue",
301
+ "description": "Check that the current page have the following partial [result](https://accessibilite.numerique.gouv.fr/methode/criteres-et-tests/) based on RGAA standard",
302
+ "wording": "I should see a combo box named {string} with value {string}"
303
+ },
304
+ {
305
+ "key": "key.then.combobox.selectValue",
306
+ "description": "Check that the current page have the following partial [result](https://accessibilite.numerique.gouv.fr/methode/criteres-et-tests/) based on RGAA standard",
307
+ "wording": "I select the value {string} in the combo box named {string}"
293
308
  }
294
309
  ]
@@ -42,6 +42,12 @@
42
42
  "wording": "je dois voir $indefiniteArticle $roleName $namedAdjective {string} et contenant {string}",
43
43
  "section": "contains"
44
44
  },
45
+ {
46
+ "key": "key.then.element.withRoleAndNameAndValue",
47
+ "description": "Vérifie l'existence d'un élément de formulaire (input) ayant le rôle $roleId, le [nom accessible](https://russmaxdesign.github.io/html-elements-names/) et la valeur spécifiée",
48
+ "wording": "je dois voir $indefiniteArticle $roleName $namedAdjective {string} avec la valeur {string}",
49
+ "section": "contains"
50
+ },
45
51
  {
46
52
  "key": "key.then.element.withRoleAndNameAndContentDisabled",
47
53
  "description": "Vérifie l'existence d'un élément Html ayant le rôle $roleId, le [nom accessible](https://russmaxdesign.github.io/html-elements-names/), le contenu spécifiés et avec l'attribut disabled à false",
@@ -31,14 +31,19 @@
31
31
  },
32
32
  {
33
33
  "key": "key.when.type.withContext",
34
- "description": "Saisit de la phrase passée en paramètre (utile par exemple pour remplir un champ de formulaire).<br/>Assurez vous d'avoir effectué une sélection d'élément avant avec les phrases <strong>Je vais à l'intérieur...</strong>.",
34
+ "description": "Saisit de la phrase passée en paramètre (utile par exemple pour remplir un champ de formulaire).<br/>Assurez vous d'avoir effectué une sélection d'élément avant avec les phrases <strong>je vais à l'intérieur...</strong>.",
35
35
  "wording": "je saisie le(s) mot(s) {string}"
36
36
  },
37
37
  {
38
38
  "key": "key.when.enter.withContext",
39
- "description": "Saisit de la phrase passée en paramètre (utile par exemple pour remplir un champ de formulaire).<br/>Assurez vous d'avoir effectué une sélection d'élément avant avec les phrases <strong>Je vais à l'intérieur...</strong>.",
39
+ "description": "Saisit de la phrase passée en paramètre (utile par exemple pour remplir un champ de formulaire).<br/>Assurez vous d'avoir effectué une sélection d'élément avant avec les phrases <strong>je vais à l'intérieur...</strong>.",
40
40
  "wording": "j'entre la valeur {string}"
41
41
  },
42
+ {
43
+ "key": "key.when.select.withContext",
44
+ "description": "Sélectionne l'option passée en paramètre (utile par exemple pour remplir un champ le liste déroulante).<br/>Assurez vous d'avoir effectué une sélection d'élément avant avec les phrases <strong>je vais à l'intérieur de la liste déroulante nommée 'maListeDeroulante'</strong>.",
45
+ "wording": "je sélectionne la valeur {string}"
46
+ },
42
47
  {
43
48
  "key": "key.when.keyboard.press",
44
49
  "description": "Simule un appui sur la touche spécifiée : <table><thead><tr><th>Touche</th><th>Description</th></tr></thead><tbody><tr><td>{tab}</td><td>Tabulation</td></tr><tr><td>{reverseTab}</td><td>Tabulation arrière</td></tr><tr><td>{down}</td><td>Flèche du bas</td></tr><tr><td>{right}</td><td>Flèche de droite</td></tr><tr><td>{left}</td><td>Flèche de gauche</td></tr><tr><td>{up}</td><td>Flèche du haut</td></tr></tbody></table>.<br/>Assurez vous d'avoir effectué une sélection d'élément avant avec les phrases <strong>Je vais à l'intérieur...</strong>.",
@@ -290,5 +295,15 @@
290
295
  "key": "key.then.a11y.rgaa.defaultWithResultContaining",
291
296
  "description": "Vérifie sur la page courante a les [résultats](https://accessibilite.numerique.gouv.fr/methode/criteres-et-tests) suivants avec le référentiel RGAA",
292
297
  "wording": "je dois avoir les résultats partiels suivants selon le référentiel rgaa"
298
+ },
299
+ {
300
+ "key": "key.then.combobox.withNameValue",
301
+ "description": "Check that the current page have the following partial [result](https://accessibilite.numerique.gouv.fr/methode/criteres-et-tests/) based on RGAA standard",
302
+ "wording": "je dois voir une liste déroulante nommée {string} avec la valeur {string}"
303
+ },
304
+ {
305
+ "key": "key.then.combobox.selectValue",
306
+ "description": "Check that the current page have the following partial [result](https://accessibilite.numerique.gouv.fr/methode/criteres-et-tests/) based on RGAA standard",
307
+ "wording": "je sélectionne la valeur {string} dans la liste déroulante nommée {string}"
293
308
  }
294
309
  ]