| // Copyright (C) 2021 the V8 project authors. All rights reserved. |
| // This code is governed by the BSD license found in the LICENSE file. |
| |
| /*--- |
| esid: sec-temporal.calendar.prototype.year |
| description: > |
| Temporal.Calendar.prototype.year will take PlainYearMonth and return |
| the value of the year. |
| info: | |
| 1. Let calendar be the this value. |
| 2. Perform ? RequireInternalSlot(calendar, [[InitializedTemporalCalendar]]). |
| 3. Assert: calendar.[[Identifier]] is "iso8601". |
| 4. If Type(temporalDateLike) is not Object or temporalDateLike does not have an [[InitializedTemporalDate]] or [[InitializedTemporalYearMonth]] internal slot, then |
| a. Set temporalDateLike to ? ToTemporalDate(temporalDateLike). |
| 5. Return ! ISOYear(temporalDateLike). |
| features: [Temporal] |
| ---*/ |
| let cal = new Temporal.Calendar("iso8601"); |
| |
| let yearMonth = new Temporal.PlainYearMonth(1999, 6); |
| assert.sameValue(cal.year(yearMonth), 1999, 'cal.year(new Temporal.PlainYearMonth(1999, 6)) must return 1999'); |