aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Adrien Zinger <zinger.ad@gmail.com> 2023-03-30 02:41:11 +0200
committerGravatar GitHub <noreply@github.com> 2023-03-29 17:41:11 -0700
commit95cb2b2ac2bf978bedbeaa968c60b44c6c512898 (patch)
tree4ff959fccd3b2a8fb1f42f99ee065605de73a48b
parentb0e08533608def8dfc4674de03835d951b6626d2 (diff)
downloadbun-95cb2b2ac2bf978bedbeaa968c60b44c6c512898.tar.gz
bun-95cb2b2ac2bf978bedbeaa968c60b44c6c512898.tar.zst
bun-95cb2b2ac2bf978bedbeaa968c60b44c6c512898.zip
Fix date format (#2422) (#2474)
* Fix date format (#2422) * Add unit tests for #2422
-rw-r--r--src/bun.js/bindings/exports.zig5
-rw-r--r--test/js/bun/util/inspect.test.js12
2 files changed, 16 insertions, 1 deletions
diff --git a/src/bun.js/bindings/exports.zig b/src/bun.js/bindings/exports.zig
index d4401865d..8641dda3a 100644
--- a/src/bun.js/bindings/exports.zig
+++ b/src/bun.js/bindings/exports.zig
@@ -2304,7 +2304,10 @@ pub const ZigConsoleClient = struct {
// in the code for printing dates, it never exceeds this amount
var iso_string_buf: [36]u8 = undefined;
var out_buf: []const u8 = std.fmt.bufPrint(&iso_string_buf, "{}", .{str}) catch "";
- if (out_buf.len > 2) {
+
+ if (strings.eql(out_buf, "null")) {
+ out_buf = "Invalid Date";
+ } else if (out_buf.len > 2) {
// trim the quotes
out_buf = out_buf[1 .. out_buf.len - 1];
}
diff --git a/test/js/bun/util/inspect.test.js b/test/js/bun/util/inspect.test.js
index de1adbcce..8409a07c4 100644
--- a/test/js/bun/util/inspect.test.js
+++ b/test/js/bun/util/inspect.test.js
@@ -337,3 +337,15 @@ describe("crash testing", () => {
it("possibly formatted emojis log", () => {
expect(Bun.inspect("✔", "hey")).toBe("✔ hey");
});
+
+it("new Date(..)", () => {
+ expect(Bun.inspect(new Date(1679911059000))).toBe("2023-03-27T09:54:00.000Z");
+ expect(Bun.inspect(new Date("March 27, 2023 09:54:00"))).toBe("2023-03-27T09:54:00.000Z");
+ expect(Bun.inspect(new Date("2023-03-27T09:54:00"))).toBe("2023-03-27T09:54:00.000Z");
+ expect(Bun.inspect(new Date(2023, 02, 27))).toBe("2023-03-27T00:00:00.000Z");
+ expect(Bun.inspect(new Date(2023, 02, 27, 09, 54, 0))).toBe("2023-03-27T09:54:00.000Z");
+
+ expect(Bun.inspect(new Date("1679911059000"))).toBe("Invalid Date");
+ expect(Bun.inspect(new Date("hello world"))).toBe("Invalid Date");
+ expect(Bun.inspect(new Date("Invalid Date"))).toBe("Invalid Date");
+});