@@ -27,6 +27,7 @@ suite('relative-time', function () {
27
27
suiteSetup ( ( ) => {
28
28
fixture = document . createElement ( 'div' )
29
29
document . body . appendChild ( fixture )
30
+ document . documentElement . lang = 'en'
30
31
} )
31
32
32
33
teardown ( ( ) => {
@@ -249,6 +250,24 @@ suite('relative-time', function () {
249
250
assert . equal ( time . shadowRoot . textContent , 'in 2 days' )
250
251
} )
251
252
253
+ test ( 'uses html lang if given lang is invalid' , async ( ) => {
254
+ const time = document . createElement ( 'relative-time' )
255
+ time . setAttribute ( 'datetime' , new Date ( ) )
256
+ time . setAttribute ( 'lang' , '' )
257
+ document . documentElement . lang = 'es'
258
+ await Promise . resolve ( )
259
+ assert . equal ( time . shadowRoot . textContent , 'ahora' )
260
+ } )
261
+
262
+ test ( 'ignores empty lang attributes' , async ( ) => {
263
+ const time = document . createElement ( 'relative-time' )
264
+ time . setAttribute ( 'datetime' , new Date ( ) )
265
+ time . setAttribute ( 'lang' , '' )
266
+ document . documentElement . lang = ''
267
+ await Promise . resolve ( )
268
+ assert . equal ( time . shadowRoot . textContent , 'now' )
269
+ } )
270
+
252
271
suite ( '[threshold]' , function ( ) {
253
272
test ( 'switches to dates after 30 past days with default threshold' , async ( ) => {
254
273
const now = new Date ( Date . now ( ) - 31 * 60 * 60 * 24 * 1000 ) . toISOString ( )
0 commit comments