From c8a9ad30263ae888866ab19bab976bab4254c537 Mon Sep 17 00:00:00 2001
From: Daniel Vedder <daniel.vedder@idiv.de>
Date: Thu, 8 Aug 2024 09:40:08 +0200
Subject: [PATCH] Added tests for units and AnnualDates

---
 src/Persefone.jl |  1 +
 test/io_tests.jl | 16 ++++++++++++++--
 2 files changed, 15 insertions(+), 2 deletions(-)

diff --git a/src/Persefone.jl b/src/Persefone.jl
index 37ed428..9660688 100644
--- a/src/Persefone.jl
+++ b/src/Persefone.jl
@@ -42,6 +42,7 @@ using
 ## define exported functions and variables
 export
     #types
+    AnnualDate,
     Pixel,
     Weather,
     FarmEvent,
diff --git a/test/io_tests.jl b/test/io_tests.jl
index 2f2b16a..9a28b5d 100644
--- a/test/io_tests.jl
+++ b/test/io_tests.jl
@@ -106,6 +106,18 @@ end
 end
 
 @testset "Utility features" begin
-    #TODO units
-    #TODO AnnualDates
+    # units
+    import Persefone: Length, Area, m, km, m², ha
+    @test 10000m² == 1ha
+    @test 15000m² / 1ha == 1.5
+    @test 1km / 5 == 200m
+    # AnnualDates
+    birthday::AnnualDate = (August, 21)
+    christmas::AnnualDate = (December, 24)
+    heute = Date(2024, 8, 8)
+    @test christmas - birthday == Day(125)
+    @test birthday - christmas == Day(240)
+    @test birthday > heute
+    @test heute + Week(2) - Day(1) == birthday
+    @test length(AnnualDate(heute):birthday) == 14
 end
-- 
GitLab