text: // Copyright 2018 the V8 project authors. All rights reserved.
  // Use of this source code is governed by a BSD-style license that can be
  // found in the LICENSE file.
  
  // Make sure that RelativeTimeFormat exposes all required properties. Those not specified
  // should have undefined value.
  // http://tc39.github.io/proposal-intl-relative-time/
  
  let rtf = new Intl.RelativeTimeFormat();
  
  // Test 1.4.3 Intl.RelativeTimeFormat.prototype.format( value, unit )
  assertEquals('string', typeof rtf.format(-1, 'seconds'));
  assertEquals('string', typeof rtf.format(-1, 'second'));
  assertEquals('string', typeof rtf.format(-1, 'minutes'));
  assertEquals('string', typeof rtf.format(-1, 'minute'));
  assertEquals('string', typeof rtf.format(-1, 'hours'));
  assertEquals('string', typeof rtf.format(-1, 'hour'));
  assertEquals('string', typeof rtf.format(-1, 'days'));
  assertEquals('string', typeof rtf.format(-1, 'day'));
  assertEquals('string', typeof rtf.format(-1, 'weeks'));
  assertEquals('string', typeof rtf.format(-1, 'week'));
  assertEquals('string', typeof rtf.format(-1, 'months'));
  assertEquals('string', typeof rtf.format(-1, 'month'));
  assertEquals('string', typeof rtf.format(-1, 'years'));
  assertEquals('string', typeof rtf.format(-1, 'year'));
  assertEquals('string', typeof rtf.format(-1, 'quarter'));
  assertEquals('string', typeof rtf.format(-1, 'quarters'));
  
  assertEquals('string', typeof rtf.format(-0, 'seconds'));
  assertEquals('string', typeof rtf.format(-0, 'second'));
  assertEquals('string', typeof rtf.format(-0, 'minutes'));
  assertEquals('string', typeof rtf.format(-0, 'minute'));
  assertEquals('string', typeof rtf.format(-0, 'hours'));
  assertEquals('string', typeof rtf.format(-0, 'hour'));
  assertEquals('string', typeof rtf.format(-0, 'days'));
  assertEquals('string', typeof rtf.format(-0, 'day'));
  assertEquals('string', typeof rtf.format(-0, 'weeks'));
  assertEquals('string', typeof rtf.format(-0, 'week'));
  assertEquals('string', typeof rtf.format(-0, 'months'));
  assertEquals('string', typeof rtf.format(-0, 'month'));
  assertEquals('string', typeof rtf.format(-0, 'years'));
  assertEquals('string', typeof rtf.format(-0, 'year'));
  assertEquals('string', typeof rtf.format(-0, 'quarter'));
  assertEquals('string', typeof rtf.format(-0, 'quarters'));
  
  assertThrows(() => rtf.format(NaN, 'seconds'), RangeError);
  assertThrows(() => rtf.format(NaN, 'second'), RangeError);
  assertThrows(() => rtf.format(NaN, 'minutes'), RangeError);
  assertThrows(() => rtf.format(NaN, 'minute'), RangeError);
  assertThrows(() => rtf.format(NaN, 'hours'), RangeError);
  assertThrows(() => rtf.format(NaN, 'hour'), RangeError);
  assertThrows(() => rtf.format(NaN, 'days'), RangeError);
  assertThrows(() => rtf.format(NaN, 'day'), RangeError);
  assertThrows(() => rtf.format(NaN, 'weeks'), RangeError);
  assertThrows(() => rtf.format(NaN, 'week'), RangeError);
  assertThrows(() => rtf.format(NaN, 'months'), RangeError);
  assertThrows(() => rtf.format(NaN, 'month'), RangeError);
  assertThrows(() => rtf.format(NaN, 'years'), RangeError);
  assertThrows(() => rtf.format(NaN, 'year'), RangeError);
  assertThrows(() => rtf.format(NaN, 'quarters'), RangeError);
  assertThrows(() => rtf.format(NaN, 'quarter'), RangeError);
  
  assertThrows(() => rtf.format(-1, 'decades'), RangeError);
  assertThrows(() => rtf.format(-1, 'decade'), RangeError);
  assertThrows(() => rtf.format(-1, 'centuries'), RangeError);
  assertThrows(() => rtf.format(-1, 'century'), RangeError);
  assertThrows(() => rtf.format(-1, 'milliseconds'), RangeError);
  assertThrows(() => rtf.format(-1, 'millisecond'), RangeError);
  assertThrows(() => rtf.format(-1, 'microseconds'), RangeError);
  assertThrows(() => rtf.format(-1, 'microsecond'), RangeError);
  assertThrows(() => rtf.format(-1, 'nanoseconds'), RangeError);
  assertThrows(() => rtf.format(-1, 'nanosecond'), RangeError);
  
  assertEquals('string', typeof rtf.format(5, 'day'));
  assertEquals('string', typeof rtf.format('5', 'day'));
  assertEquals('string', typeof rtf.format('-5', 'day'));
  assertEquals('string', typeof rtf.format('534', 'day'));
  assertEquals('string', typeof rtf.format('-534', 'day'));
  
  //assertThrows(() => rtf.format('xyz', 'day'), RangeError);
  