1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
|
#!/usr/bin/clojure
(ns run-pkg-tests
(:require
[clojure.test :refer :all]
[clojure.tools.cli :refer [parse-opts]]))
(def opt-spec
[["-i" "--integer N" "An integer"
:default 0
:parse-fn #(Long/parseLong %)
:validate [integer? "Must be a number"]]
["-v" nil "Verbosity level"
:id :verbosity
:default 0
:update-fn inc]
["-h" "--help"]])
(is (= {:integer 3 :verbosity 0} (:options (parse-opts ["-i" "3"] opt-spec))))
(is (= {:integer 0 :verbosity 2} (:options (parse-opts ["-v" "-v"] opt-spec))))
|