From d42336312cba0cc05082a37278d82b53688dcfde Mon Sep 17 00:00:00 2001 From: Linus Groh Date: Thu, 6 Jan 2022 21:48:50 +0100 Subject: [PATCH] LibJS: Include time zone name in TemporalInvalidTimeZoneName error --- Userland/Libraries/LibJS/Runtime/ErrorTypes.h | 2 +- .../Libraries/LibJS/Runtime/Temporal/AbstractOperations.cpp | 2 +- .../Libraries/LibJS/Runtime/Temporal/TimeZoneConstructor.cpp | 2 +- .../LibJS/Tests/builtins/Temporal/TimeZone/TimeZone.js | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Userland/Libraries/LibJS/Runtime/ErrorTypes.h b/Userland/Libraries/LibJS/Runtime/ErrorTypes.h index f4b6017541..555ae46ced 100644 --- a/Userland/Libraries/LibJS/Runtime/ErrorTypes.h +++ b/Userland/Libraries/LibJS/Runtime/ErrorTypes.h @@ -240,7 +240,7 @@ M(TemporalInvalidTime, "Invalid time") \ M(TemporalInvalidTimeString, "Invalid time string '{}'") \ M(TemporalInvalidTimeStringUTCDesignator, "Invalid time string '{}': must not contain a UTC designator") \ - M(TemporalInvalidTimeZoneName, "Invalid time zone name") \ + M(TemporalInvalidTimeZoneName, "Invalid time zone name '{}'") \ M(TemporalInvalidTimeZoneString, "Invalid time zone string '{}'") \ M(TemporalInvalidUnitRange, "Invalid unit range, {} is larger than {}") \ M(TemporalInvalidYearMonthString, "Invalid year month string '{}'") \ diff --git a/Userland/Libraries/LibJS/Runtime/Temporal/AbstractOperations.cpp b/Userland/Libraries/LibJS/Runtime/Temporal/AbstractOperations.cpp index 4045c90d69..b0801b61e1 100644 --- a/Userland/Libraries/LibJS/Runtime/Temporal/AbstractOperations.cpp +++ b/Userland/Libraries/LibJS/Runtime/Temporal/AbstractOperations.cpp @@ -1684,7 +1684,7 @@ ThrowCompletionOr parse_temporal_time_zone_string(GlobalObject if (name_part.has_value()) { // a. If ! IsValidTimeZoneName(name) is false, throw a RangeError exception. if (!is_valid_time_zone_name(*name_part)) - return vm.throw_completion(global_object, ErrorType::TemporalInvalidTimeZoneName); + return vm.throw_completion(global_object, ErrorType::TemporalInvalidTimeZoneName, *name_part); // b. Set name to ! CanonicalizeTimeZoneName(name). name = canonicalize_time_zone_name(*name_part); diff --git a/Userland/Libraries/LibJS/Runtime/Temporal/TimeZoneConstructor.cpp b/Userland/Libraries/LibJS/Runtime/Temporal/TimeZoneConstructor.cpp index 6d1038f5ac..1c91f5c158 100644 --- a/Userland/Libraries/LibJS/Runtime/Temporal/TimeZoneConstructor.cpp +++ b/Userland/Libraries/LibJS/Runtime/Temporal/TimeZoneConstructor.cpp @@ -65,7 +65,7 @@ ThrowCompletionOr TimeZoneConstructor::construct(FunctionObject& new_ta // a. If ! IsValidTimeZoneName(identifier) is false, then if (!is_valid_time_zone_name(identifier)) { // i. Throw a RangeError exception. - return vm.throw_completion(global_object, ErrorType::TemporalInvalidTimeZoneName); + return vm.throw_completion(global_object, ErrorType::TemporalInvalidTimeZoneName, identifier); } // b. Let canonical be ! CanonicalizeTimeZoneName(identifier). diff --git a/Userland/Libraries/LibJS/Tests/builtins/Temporal/TimeZone/TimeZone.js b/Userland/Libraries/LibJS/Tests/builtins/Temporal/TimeZone/TimeZone.js index 7a468c2075..83693de1cd 100644 --- a/Userland/Libraries/LibJS/Tests/builtins/Temporal/TimeZone/TimeZone.js +++ b/Userland/Libraries/LibJS/Tests/builtins/Temporal/TimeZone/TimeZone.js @@ -8,7 +8,7 @@ describe("errors", () => { test("Invalid time zone name", () => { expect(() => { new Temporal.TimeZone("foo"); - }).toThrowWithMessage(RangeError, "Invalid time zone name"); + }).toThrowWithMessage(RangeError, "Invalid time zone name 'foo'"); }); });