Skip to content

Commit 1942f5f

Browse files
authored
feat: 🎸 upgrade @testing-library/dom to v10 (#722)
* feat: 🎸 upgrade @testing-library/dom to v10 BREAKING CHANGE: 🧨 byRole: only allow string as a role * test: 💍 fix byRole test due to stricter aria-query BREAKING CHANGE: 🧨 stricter aria-query
1 parent d7ec2c9 commit 1942f5f

File tree

4 files changed

+39
-76
lines changed

4 files changed

+39
-76
lines changed

projects/spectator/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
"angular testing dumb components"
2424
],
2525
"dependencies": {
26-
"@testing-library/dom": "^8.11.0",
26+
"@testing-library/dom": "^10.4.1",
2727
"jquery": "^3.7.1",
2828
"replace-in-file": "6.2.0",
2929
"tslib": "^2.6.2"

projects/spectator/src/lib/dom-selectors.ts

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,13 @@
11
import {
22
Matcher,
3-
MatcherFunction,
43
MatcherOptions,
54
NormalizerFn,
65
SelectorMatcherOptions,
76
queries as DOMQueries,
87
getDefaultNormalizer,
98
ByRoleOptions,
9+
ByRoleMatcher,
1010
} from '@testing-library/dom';
11-
import { ARIARole } from 'aria-query';
1211

1312
interface MandatorySelectorMatchingOptions extends MatcherOptions {
1413
selector: SelectorMatcherOptions['selector'];
@@ -65,5 +64,5 @@ export const byTestId: DOMSelectorFactory = (matcher, options) =>
6564
export const byValue: DOMSelectorFactory = (matcher, options) =>
6665
new DOMSelector((el) => DOMQueries.queryAllByDisplayValue(el, matcher, options));
6766

68-
export const byRole = (matcher: ARIARole | MatcherFunction | Omit<string, ARIARole>, options?: ByRoleOptions): DOMSelector =>
67+
export const byRole = (matcher: ByRoleMatcher, options?: ByRoleOptions): DOMSelector =>
6968
new DOMSelector((el) => DOMQueries.queryAllByRole(el, matcher, options));

projects/spectator/test/dom-selectors/dom-selectors.component.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ export class DomSelectorsNestedComponent {}
2020
2121
<img src="" alt="By alt text" id="by-alt-text-img" />
2222
23-
<a href="" title="By title" id="by-title-a"></a>
23+
<a href="#" title="By title" id="by-title-a"></a>
2424
2525
<input type="text" value="By value" id="by-value-input" />
2626

yarn.lock

Lines changed: 35 additions & 71 deletions
Original file line numberDiff line numberDiff line change
@@ -4047,18 +4047,18 @@
40474047
resolved "https://registry.yarnpkg.com/@socket.io/component-emitter/-/component-emitter-3.1.0.tgz#96116f2a912e0c02817345b3c10751069920d553"
40484048
integrity sha512-+9jVqKhRSpsc591z5vX+X5Yyw+he/HCB4iQ/RYxw35CEPaY1gnsNE43nf9n9AaYjAQrTiI/mOwKUKdUs9vf7Xg==
40494049

4050-
"@testing-library/dom@^8.11.0":
4051-
version "8.11.4"
4052-
resolved "https://registry.npmjs.org/@testing-library/dom/-/dom-8.11.4.tgz"
4053-
integrity sha512-7vZ6ZoBEbr6bfEM89W1nzl0vHbuI0g0kRrI0hwSXH3epnuqGO3KulFLQCKfmmW+60t7e4sevAkJPASSMmnNCRw==
4050+
"@testing-library/dom@^10.4.1":
4051+
version "10.4.1"
4052+
resolved "https://registry.yarnpkg.com/@testing-library/dom/-/dom-10.4.1.tgz#d444f8a889e9a46e9a3b4f3b88e0fcb3efb6cf95"
4053+
integrity sha512-o4PXJQidqJl82ckFaXUeoAW+XysPLauYI43Abki5hABd853iMhitooc6znOnczgbTYmEP6U6/y1ZyKAIsvMKGg==
40544054
dependencies:
40554055
"@babel/code-frame" "^7.10.4"
40564056
"@babel/runtime" "^7.12.5"
4057-
"@types/aria-query" "^4.2.0"
4058-
aria-query "^5.0.0"
4059-
chalk "^4.1.0"
4057+
"@types/aria-query" "^5.0.1"
4058+
aria-query "5.3.0"
40604059
dom-accessibility-api "^0.5.9"
4061-
lz-string "^1.4.4"
4060+
lz-string "^1.5.0"
4061+
picocolors "1.1.1"
40624062
pretty-format "^27.0.2"
40634063

40644064
"@tootallnate/once@2":
@@ -4121,10 +4121,10 @@
41214121
dependencies:
41224122
tslib "^2.4.0"
41234123

4124-
"@types/aria-query@^4.2.0":
4125-
version "4.2.2"
4126-
resolved "https://registry.npmjs.org/@types/aria-query/-/aria-query-4.2.2.tgz"
4127-
integrity sha512-HnYpAE1Y6kRyKM/XkEuiRQhTHvkzMBurTHnpFLYLBGPIylZNPs9jJcuOOYWxPLJCSEtmZT0Y8rHDokKN7rRTig==
4124+
"@types/aria-query@^5.0.1":
4125+
version "5.0.4"
4126+
resolved "https://registry.yarnpkg.com/@types/aria-query/-/aria-query-5.0.4.tgz#1a31c3d378850d2778dabb6374d036dcba4ba708"
4127+
integrity sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw==
41284128

41294129
"@types/babel__core@^7.20.5":
41304130
version "7.20.5"
@@ -5203,16 +5203,18 @@ argparse@^2.0.1:
52035203
resolved "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz"
52045204
integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==
52055205

5206+
aria-query@5.3.0:
5207+
version "5.3.0"
5208+
resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-5.3.0.tgz#650c569e41ad90b51b3d7df5e5eed1c7549c103e"
5209+
integrity sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==
5210+
dependencies:
5211+
dequal "^2.0.3"
5212+
52065213
aria-query@5.3.2:
52075214
version "5.3.2"
52085215
resolved "https://registry.yarnpkg.com/aria-query/-/aria-query-5.3.2.tgz#93f81a43480e33a338f19163a3d10a50c01dcd59"
52095216
integrity sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==
52105217

5211-
aria-query@^5.0.0:
5212-
version "5.0.0"
5213-
resolved "https://registry.npmjs.org/aria-query/-/aria-query-5.0.0.tgz"
5214-
integrity sha512-V+SM7AbUwJ+EBnB8+DXs0hPZHO0W6pqBcc0dW90OwtVG02PswOu/teuARoLQjdDOH+t9pJgGnW5/Qmouf3gPJg==
5215-
52165218
array-flatten@1.1.1:
52175219
version "1.1.1"
52185220
resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2"
@@ -6689,6 +6691,11 @@ dependency-graph@^1.0.0:
66896691
resolved "https://registry.yarnpkg.com/dependency-graph/-/dependency-graph-1.0.0.tgz#bb5e85aec1310bc13b22dbd76e3196c4ee4c10d2"
66906692
integrity sha512-cW3gggJ28HZ/LExwxP2B++aiKxhJXMSIt9K48FOXQkm+vuG5gyatXnLsONRJdzO/7VfjDIiaOOa/bs4l464Lwg==
66916693

6694+
dequal@^2.0.3:
6695+
version "2.0.3"
6696+
resolved "https://registry.yarnpkg.com/dequal/-/dequal-2.0.3.tgz#2644214f1997d39ed0ee0ece72335490a7ac67be"
6697+
integrity sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==
6698+
66926699
destroy@1.2.0:
66936700
version "1.2.0"
66946701
resolved "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz"
@@ -9882,10 +9889,10 @@ lru-cache@^6.0.0:
98829889
dependencies:
98839890
yallist "^4.0.0"
98849891

9885-
lz-string@^1.4.4:
9886-
version "1.4.4"
9887-
resolved "https://registry.npmjs.org/lz-string/-/lz-string-1.4.4.tgz"
9888-
integrity "sha1-wNjq82BZ9wV5bh40SBHPTEmNOiY= sha512-0ckx7ZHRPqb0oUm8zNr+90mtf9DQB60H1wMCjBtfi62Kl3a7JbHob6gA2bC+xRvZoOL+1hzUK8jeuEIQE8svEQ=="
9892+
lz-string@^1.5.0:
9893+
version "1.5.0"
9894+
resolved "https://registry.yarnpkg.com/lz-string/-/lz-string-1.5.0.tgz#c1ab50f77887b712621201ba9fd4e3a6ed099941"
9895+
integrity sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==
98899896

98909897
magic-string@0.30.17, magic-string@^0.30.17:
98919898
version "0.30.17"
@@ -10377,7 +10384,7 @@ mute-stream@^2.0.0:
1037710384
resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-2.0.0.tgz#a5446fc0c512b71c83c44d908d5c7b7b4c493b2b"
1037810385
integrity sha512-WWdIxpyjEn+FhQJQQv9aQAYlHoNVdzIzUySNV1gHUPDSdZJ3yZn7pAAbQcV7B56Mvu881q9FZV+0Vx2xC44VWA==
1037910386

10380-
nanoid@^3.3.11, nanoid@^3.3.7:
10387+
nanoid@^3.3.11:
1038110388
version "3.3.11"
1038210389
resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.11.tgz#4f4f112cefbe303202f2199838128936266d185b"
1038310390
integrity sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==
@@ -11078,12 +11085,7 @@ pegjs@^0.10.0:
1107811085
resolved "https://registry.npmjs.org/pegjs/-/pegjs-0.10.0.tgz"
1107911086
integrity "sha1-z4uvrm7d/0tafvsYUmnqr0YQ3b0= sha512-qI5+oFNEGi3L5HAxDwN2LA4Gg7irF70Zs25edhjld9QemOgp0CbvMtbFcMvFtEo1OityPrcCzkQFB8JP/hxgow=="
1108011087

11081-
picocolors@^1.0.0:
11082-
version "1.0.0"
11083-
resolved "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz"
11084-
integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==
11085-
11086-
picocolors@^1.1.1:
11088+
picocolors@1.1.1, picocolors@^1.0.0, picocolors@^1.1.1:
1108711089
version "1.1.1"
1108811090
resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.1.tgz#3d321af3eab939b083c8f929a1d12cda81c26b6b"
1108911091
integrity sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==
@@ -11093,12 +11095,7 @@ picomatch@4.0.2, picomatch@^4.0.2:
1109311095
resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-4.0.2.tgz#77c742931e8f3b8820946c76cd0c1f13730d1dab"
1109411096
integrity sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==
1109511097

11096-
picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3:
11097-
version "2.3.0"
11098-
resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz"
11099-
integrity sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==
11100-
11101-
picomatch@^2.3.1:
11098+
picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.2.3, picomatch@^2.3.1:
1110211099
version "2.3.1"
1110311100
resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42"
1110411101
integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==
@@ -11214,7 +11211,7 @@ postcss-value-parser@^4.1.0, postcss-value-parser@^4.2.0:
1121411211
resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#723c09920836ba6d3e5af019f92bc0971c02e514"
1121511212
integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==
1121611213

11217-
postcss@8.5.6, postcss@^8.2.14, postcss@^8.4.33, postcss@^8.5.6:
11214+
postcss@8.5.6, postcss@^8.2.14, postcss@^8.4.33, postcss@^8.4.47, postcss@^8.4.49, postcss@^8.5.3, postcss@^8.5.6:
1121811215
version "8.5.6"
1121911216
resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.5.6.tgz#2825006615a619b4f62a9e7426cc120b349a8f3c"
1122011217
integrity sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==
@@ -11223,24 +11220,6 @@ postcss@8.5.6, postcss@^8.2.14, postcss@^8.4.33, postcss@^8.5.6:
1122311220
picocolors "^1.1.1"
1122411221
source-map-js "^1.2.1"
1122511222

11226-
postcss@^8.4.47:
11227-
version "8.4.49"
11228-
resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.4.49.tgz#4ea479048ab059ab3ae61d082190fabfd994fe19"
11229-
integrity sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA==
11230-
dependencies:
11231-
nanoid "^3.3.7"
11232-
picocolors "^1.1.1"
11233-
source-map-js "^1.2.1"
11234-
11235-
postcss@^8.4.49, postcss@^8.5.3:
11236-
version "8.5.4"
11237-
resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.5.4.tgz#d61014ac00e11d5f58458ed7247d899bd65f99c0"
11238-
integrity sha512-QSa9EBe+uwlGTFmHsPKokv3B/oEMQZxfqW0QqNCyhpa6mB1afzulwn8hihglqAb2pOw+BJgNlmXQ8la2VeHB7w==
11239-
dependencies:
11240-
nanoid "^3.3.11"
11241-
picocolors "^1.1.1"
11242-
source-map-js "^1.2.1"
11243-
1124411223
prelude-ls@^1.2.1:
1124511224
version "1.2.1"
1124611225
resolved "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz"
@@ -11330,12 +11309,7 @@ psl@^1.1.33:
1133011309
resolved "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz"
1133111310
integrity sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==
1133211311

11333-
punycode@^2.1.0, punycode@^2.1.1:
11334-
version "2.1.1"
11335-
resolved "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz"
11336-
integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==
11337-
11338-
punycode@^2.3.1:
11312+
punycode@^2.1.0, punycode@^2.1.1, punycode@^2.3.1:
1133911313
version "2.3.1"
1134011314
resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.1.tgz#027422e2faec0b25e1549c3e1bd8309b9133b6e5"
1134111315
integrity sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==
@@ -13062,26 +13036,16 @@ tsconfig-paths@^4.2.0:
1306213036
minimist "^1.2.6"
1306313037
strip-bom "^3.0.0"
1306413038

13065-
tslib@2.8.1, tslib@^2.4.0:
13039+
tslib@2.8.1, tslib@^2.0.0, tslib@^2.1.0, tslib@^2.3.0, tslib@^2.4.0, tslib@^2.6.2:
1306613040
version "2.8.1"
1306713041
resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.8.1.tgz#612efe4ed235d567e8aba5f2a5fab70280ade83f"
1306813042
integrity sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==
1306913043

1307013044
tslib@^1.9.0:
1307113045
version "1.14.1"
13072-
resolved "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz"
13046+
resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00"
1307313047
integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==
1307413048

13075-
tslib@^2.0.0, tslib@^2.1.0, tslib@^2.3.0:
13076-
version "2.3.1"
13077-
resolved "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz"
13078-
integrity sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==
13079-
13080-
tslib@^2.6.2:
13081-
version "2.6.2"
13082-
resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.2.tgz#703ac29425e7b37cd6fd456e92404d46d1f3e4ae"
13083-
integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==
13084-
1308513049
tuf-js@^3.0.1:
1308613050
version "3.0.1"
1308713051
resolved "https://registry.yarnpkg.com/tuf-js/-/tuf-js-3.0.1.tgz#e3f07ed3d8e87afaa70607bd1ef801d5c1f57177"

0 commit comments

Comments
 (0)