From cab94be4abed03f3dd6e8c6d71f7d3356f042f0f Mon Sep 17 00:00:00 2001 From: Rafael Schouten Date: Mon, 13 Jan 2025 22:32:32 +0100 Subject: [PATCH] add Base.zero for data time types --- src/datetime.jl | 1 + test/test_time.jl | 9 +++++++++ 2 files changed, 10 insertions(+) diff --git a/src/datetime.jl b/src/datetime.jl index 0d148a1..3713795 100644 --- a/src/datetime.jl +++ b/src/datetime.jl @@ -161,6 +161,7 @@ pattern given in the `format` string. return $CFDateTime(p,_origintuple(dt)) end + Base.zero(::Type{$CFDateTime}) = Millisecond(0) function _origin_period(dt::$CFDateTime{T,Torigintuple}) where {T,Torigintuple} Ti = _type(T) diff --git a/test/test_time.jl b/test/test_time.jl index 9f6e0a4..82f25d9 100644 --- a/test/test_time.jl +++ b/test/test_time.jl @@ -554,3 +554,12 @@ MYMD = CFTime.datetuple_ymd(T,Z) Z2 = CFTime.datenum(T,MYMD...) @test Z == Z2 + +@testset "zero" begin + @test zero(DateTimeAllLeap) == CFTime.Millisecond(0) + @test zero(DateTimeNoLeap) == CFTime.Millisecond(0) + @test zero(DateTimeJulian) == CFTime.Millisecond(0) + @test zero(DateTimeJulian) == CFTime.Millisecond(0) + @test zero(DateTime360Day) == CFTime.Millisecond(0) + @test zero(DateTime360Day) == CFTime.Millisecond(0) +end