is there a better alternative for using clojure.test/are that does not use doseq ??
(deftest test-function-files?
(let [function-to-test #'some-namespace/function-under-test
test-cases [{:input-file-name "file-a.extA"
:expected-result true
:assert-message "Process extA file"}
{:input-file-name "file-b.exta"
:expected-result true
:assert-message "Process exta file"}
{:input-file-name "file-c.extB"
:expected-result false
:assert-message "Don't process extB file"}
{:input-file-name ""
:expected-result false
:assert-message "Don't process empty name"}
{:input-file-name nil
:expected-result nil
:assert-message "Don't process nil name"}
{:input-file-name 98765
:expected-result false
:assert-message "Don't process non-string name"}]]
(testing "handle file names with spaces"
(is (thrown-with-msg? ExceptionInfo #"Invalid input: spaces detected."
(function-to-test (make-test-event "file with spaces.extB" 1234)))
"Should throw error for file names with spaces."))
(testing "check various file names and extensions"
(doseq [{:keys [input-file-name expected-result assert-message]} test-cases]
(is (= expected-result (function-to-test (make-test-event input-file-name 1234))) assert-message)))))
(defn make-test-event [file-name file-size]
;; Anonymized event creation, if necessary
{:file-name file-name :size file-size}) ;; Simplified examplethe problem is that people is asking me that clojure.test/are does not have assert-messages
I want a better way to return on cursive-repl + goto on the terminal
if it's possible