summaryrefslogtreecommitdiffstats
path: root/time/time_test.go
diff options
context:
space:
mode:
Diffstat (limited to 'time/time_test.go')
-rw-r--r--time/time_test.go68
1 files changed, 68 insertions, 0 deletions
diff --git a/time/time_test.go b/time/time_test.go
new file mode 100644
index 0000000..d55783e
--- /dev/null
+++ b/time/time_test.go
@@ -0,0 +1,68 @@
+// Copyright © 2022 siddharth ravikumar <s@ricketyspace.net>
+// SPDX-License-Identifier: ISC
+
+package time
+
+import "testing"
+
+func TestDurationToSeconds(t *testing.T) {
+ secs, err := durationToSeconds("PT3H4M60S")
+ if err != nil {
+ t.Errorf("failed: %v", err)
+ return
+ }
+ if secs != 11100 {
+ t.Errorf("duration in seconds incorrect: %v", secs)
+ return
+ }
+
+ secs, err = durationToSeconds("PT4M60S")
+ if err != nil {
+ t.Errorf("failed: %v", err)
+ return
+ }
+ if secs != 300 {
+ t.Errorf("duration in seconds incorrect: %v", secs)
+ return
+ }
+
+ secs, err = durationToSeconds("PT12H")
+ if err != nil {
+ t.Errorf("failed: %v", err)
+ return
+ }
+ if secs != 43200 {
+ t.Errorf("duration in seconds incorrect: %v", secs)
+ return
+ }
+
+ secs, err = durationToSeconds("PT1H")
+ if err != nil {
+ t.Errorf("failed: %v", err)
+ return
+ }
+ if secs != 3600 {
+ t.Errorf("duration in seconds incorrect: %v", secs)
+ return
+ }
+
+ secs, err = durationToSeconds("PT2H")
+ if err != nil {
+ t.Errorf("failed: %v", err)
+ return
+ }
+ if secs != 7200 {
+ t.Errorf("duration in seconds incorrect: %v", secs)
+ return
+ }
+
+ secs, err = durationToSeconds("PT45M")
+ if err != nil {
+ t.Errorf("failed: %v", err)
+ return
+ }
+ if secs != 2700 {
+ t.Errorf("duration in seconds incorrect: %v", secs)
+ return
+ }
+}