clojure-russia 2018-09-08

приветствую! Я спекой описываю аргументы, которые принимает моя функция. Один из аргументов - это атом, который я описываю так:

(s/def ::height #(pos-int? @%))
дальше я хочу протестировать мою функцию, вызвав ее со сгенерированными аргументами. Проблема в том, что нет генератора для атома. Можете объяснить мне как описать генератор для атома?

получилось следующее

(s/def ::height
  (s/with-gen
    #(pos-int? @%)
    #(gen/fmap (fn [val] (atom val))
               (s/gen pos-int?))))

а как спекой описать javascript объект?

Спекой map с не-ключевыми-словами в ключах толком не описать, какое уж там "javascript object"