Back
months (clj)
(source)protocol
(months _)
Return the given quantity in months.
Examples
tick
(ns tick.api-test
(:require
[clojure.test
:refer [deftest is testing run-tests]
:refer-macros [deftest is testing run-tests]]
[tick.core :as t]
[tick.locale-en-us]
[tick.protocols :as p]
[cljc.java-time.clock]
[cljc.java-time.instant]
[cljc.java-time.day-of-week]
[cljc.java-time.month]
[cljc.java-time.year]
#?@(:cljs [[java.time :refer [Instant]]]))
#?(:clj
(:import [java.time Instant])))
(deftest units-test
(is (=
{:seconds 0, :nanos 1}
(t/units (t/new-duration 1 :nanos))))
(is
(=
{:years 10, :months 0, :days 0}
(t/units (t/new-period 10 :years)))))
(deftest month
(let [months (fn [strings] (map t/month strings))]
(is (every? #{cljc.java-time.month/january} (months ["jan" "january"])))
(is (every? #{cljc.java-time.month/february} (months ["feb" "february"])))
(is (every? #{cljc.java-time.month/march} (months ["mar" "march"])))
(is (every? #{cljc.java-time.month/april} (months ["apr" "april"])))
(is (every? #{cljc.java-time.month/may} (months ["may"])))
(is (every? #{cljc.java-time.month/june} (months ["jun" "june"])))
(is (every? #{cljc.java-time.month/july} (months ["jul" "july"])))
(is (every? #{cljc.java-time.month/august} (months ["aug" "august"])))
(is (every? #{cljc.java-time.month/september} (months ["sep" "september"])))
(is (every? #{cljc.java-time.month/october} (months ["oct" "october"])))
(is (every? #{cljc.java-time.month/november} (months ["nov" "november"])))
(is (every? #{cljc.java-time.month/december} (months ["dec" "december"])))))
;; Periods. Convenience functions to create periods of specific
;; units.
(deftest period-functions-test
(is (= (t/of-days 10) (t/new-period 10 :days)))
(is (= (t/of-months 10) (t/new-period 10 :months)))
(is (= (t/of-years 10) (t/new-period 10 :years))))