mirror of
				https://github.com/tc39/test262.git
				synced 2025-11-03 21:24:30 +01:00 
			
		
		
		
	See https://github.com/tc39/proposal-temporal/pull/2397 Adds tests for ISO strings with unrecognized annotations with the critical flag. These strings should all be rejected.
		
			
				
	
	
		
			30 lines
		
	
	
		
			980 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			30 lines
		
	
	
		
			980 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
// Copyright (C) 2022 Igalia, S.L. All rights reserved.
 | 
						|
// This code is governed by the BSD license found in the LICENSE file.
 | 
						|
 | 
						|
/*---
 | 
						|
esid: sec-temporal.plaindatetime.compare
 | 
						|
description: Unknown annotations with critical flag are rejected
 | 
						|
features: [Temporal]
 | 
						|
---*/
 | 
						|
 | 
						|
const invalidStrings = [
 | 
						|
  "1970-01-01T00:00[!foo=bar]",
 | 
						|
  "1970-01-01T00:00[UTC][!foo=bar]",
 | 
						|
  "1970-01-01T00:00[u-ca=iso8601][!foo=bar]",
 | 
						|
  "1970-01-01T00:00[UTC][!foo=bar][u-ca=iso8601]",
 | 
						|
  "1970-01-01T00:00[foo=bar][!_foo-bar0=Dont-Ignore-This-99999999999]",
 | 
						|
];
 | 
						|
 | 
						|
invalidStrings.forEach((arg) => {
 | 
						|
  assert.throws(
 | 
						|
    RangeError,
 | 
						|
    () => Temporal.PlainDateTime.compare(arg, new Temporal.PlainDateTime(1976, 11, 18)),
 | 
						|
    `reject unknown annotation with critical flag: ${arg} (first argument)`
 | 
						|
  );
 | 
						|
  assert.throws(
 | 
						|
    RangeError,
 | 
						|
    () => Temporal.PlainDateTime.compare(new Temporal.PlainDateTime(1976, 11, 18), arg),
 | 
						|
    `reject unknown annotation with critical flag: ${arg} (second argument)`
 | 
						|
  );
 | 
						|
});
 |