Bug 1904139 - Don't re-initialize platform font list from GetDefaultFont. r=jfkthame
[gecko.git] / js / src / tests / test262 / built-ins / Temporal / PlainMonthDay / prototype / toPlainDate / builtin-calendar-no-observable-calls.js
blob7a2935df2c8221bda73f056c9cb15b1c672f4e67
1 // |reftest| skip-if(!this.hasOwnProperty('Temporal')) -- Temporal is not enabled unconditionally
2 // Copyright (C) 2023 Igalia, S.L. All rights reserved.
3 // This code is governed by the BSD license found in the LICENSE file.
5 /*---
6 esid: sec-temporal.plainmonthday.prototype.toplaindate
7 description: >
8   Calling the method on an instance constructed with a builtin calendar causes
9   no observable lookups or calls to calendar methods.
10 includes: [temporalHelpers.js]
11 features: [Temporal]
12 ---*/
14 const fieldsOriginal = Object.getOwnPropertyDescriptor(Temporal.Calendar.prototype, "fields");
15 Object.defineProperty(Temporal.Calendar.prototype, "fields", {
16   configurable: true,
17   enumerable: false,
18   get() {
19     TemporalHelpers.assertUnreachable("fields should not be looked up");
20   },
21 });
22 const mergeFieldsOriginal = Object.getOwnPropertyDescriptor(Temporal.Calendar.prototype, "mergeFields");
23 Object.defineProperty(Temporal.Calendar.prototype, "mergeFields", {
24   configurable: true,
25   enumerable: false,
26   get() {
27     TemporalHelpers.assertUnreachable("mergeFields should not be looked up");
28   },
29 });
30 const dateFromFieldsOriginal = Object.getOwnPropertyDescriptor(Temporal.Calendar.prototype, "dateFromFields");
31 Object.defineProperty(Temporal.Calendar.prototype, "dateFromFields", {
32   configurable: true,
33   enumerable: false,
34   get() {
35     TemporalHelpers.assertUnreachable("dateFromFields should not be looked up");
36   },
37 });
39 const instance = new Temporal.PlainMonthDay(5, 2, "iso8601", 1972);
40 instance.toPlainDate({ year: 2002 });
42 Object.defineProperty(Temporal.Calendar.prototype, "fields", fieldsOriginal);
43 Object.defineProperty(Temporal.Calendar.prototype, "mergeFields", mergeFieldsOriginal);
44 Object.defineProperty(Temporal.Calendar.prototype, "dateFromFields", dateFromFieldsOriginal);
46 reportCompare(0, 0);