@@ -130,6 +130,7 @@ suite('relative-time', function () {
130130 ...Object . getOwnPropertyNames ( HTMLElement . prototype ) ,
131131 ]
132132 const observedAttributes = new Set ( RelativeTimeElement . observedAttributes )
133+ observedAttributes . delete ( 'aria-hidden' ) // Standard HTML attribute, no need for custom getter
133134 for ( const member of members ) observedAttributes . delete ( member )
134135 assert . empty ( [ ...observedAttributes ] , 'observedAttributes that arent class members' )
135136 } )
@@ -1872,6 +1873,40 @@ suite('relative-time', function () {
18721873 }
18731874 } )
18741875
1876+ suite ( '[aria-hidden]' , async ( ) => {
1877+ test ( '[aria-hidden="true"] applies to shadow root' , async ( ) => {
1878+ const now = new Date ( ) . toISOString ( )
1879+ const time = document . createElement ( 'relative-time' )
1880+ time . setAttribute ( 'datetime' , now )
1881+ time . setAttribute ( 'aria-hidden' , 'true' )
1882+ await Promise . resolve ( )
1883+
1884+ const span = time . shadowRoot . querySelector ( 'span' )
1885+ assert . equal ( span . getAttribute ( 'aria-hidden' ) , 'true' )
1886+ } )
1887+
1888+ test ( '[aria-hidden="false"] applies to shadow root' , async ( ) => {
1889+ const now = new Date ( ) . toISOString ( )
1890+ const time = document . createElement ( 'relative-time' )
1891+ time . setAttribute ( 'datetime' , now )
1892+ time . setAttribute ( 'aria-hidden' , 'false' )
1893+ await Promise . resolve ( )
1894+
1895+ assert . isNull ( time . shadowRoot . querySelector ( '[aria-hidden]' ) , 'Expected no aria-hidden to be present' )
1896+ assert . isNull ( time . shadowRoot . querySelector ( 'span' ) , 'Expected no span to be present' )
1897+ } )
1898+
1899+ test ( 'no aria-hidden applies to shadow root' , async ( ) => {
1900+ const now = new Date ( ) . toISOString ( )
1901+ const time = document . createElement ( 'relative-time' )
1902+ time . setAttribute ( 'datetime' , now )
1903+ await Promise . resolve ( )
1904+
1905+ assert . isNull ( time . shadowRoot . querySelector ( '[aria-hidden]' ) , 'Expected no aria-hidden to be present' )
1906+ assert . isNull ( time . shadowRoot . querySelector ( 'span' ) , 'Expected no span to be present' )
1907+ } )
1908+ } )
1909+
18751910 suite ( 'legacy formats' , function ( ) {
18761911 const referenceDate = '2022-10-24T14:46:00.000Z'
18771912 const tests = new Set ( [
0 commit comments