babashka/script/lib_tests/clojure_data_zip_test

29 lines
901 B
Text
Raw Normal View History

2020-05-14 20:16:42 +00:00
#!/usr/bin/env bash
set -eo pipefail
export BABASHKA_CLASSPATH="$(clojure -Sdeps '{:deps {org.clojure/data.zip {:mvn/version "1.0.0"}}}' -Spath)"
if [ "$BABASHKA_TEST_ENV" = "native" ]; then
BB_CMD="./bb"
else
BB_CMD="lein bb"
fi
$BB_CMD --verbose "
(require '[clojure.data.xml :as xml])
(require '[clojure.zip :as zip])
(require '[clojure.data.zip.xml :refer [text attr attr= xml-> xml1-> text=]])
(def data (str \"<root>\"
\" <character type=\\\"person\\\" name=\\\"alice\\\" />\"
\" <character type=\\\"animal\\\" name=\\\"march hare\\\" />\"
\"</root>\"))
;(prn :data data)
(let [xml (zip/xml-zip (xml/parse (java.io.StringReader. data)))]
;(prn :xml xml)
(prn :alice-is-a (xml1-> xml :character [(attr= :name \"alice\")] (attr :type)))
(prn :animal-is-called (xml1-> xml :character [(attr= :type \"animal\")] (attr :name))))
"