From 27e82f6a2e8459170cebd929c453c23dec22690b Mon Sep 17 00:00:00 2001 From: Dave Roberts Date: Wed, 19 Feb 2025 22:47:46 -0600 Subject: [PATCH 1/4] Add tests for `vector?` --- test/clojure/core_test/vector_qmark.cljc | 29 ++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 test/clojure/core_test/vector_qmark.cljc diff --git a/test/clojure/core_test/vector_qmark.cljc b/test/clojure/core_test/vector_qmark.cljc new file mode 100644 index 0000000..10b43c9 --- /dev/null +++ b/test/clojure/core_test/vector_qmark.cljc @@ -0,0 +1,29 @@ +(ns clojure.core-test.vector-qmark + (:require [clojure.test :as t :refer [deftest testing is are]] + [clojure.core-test.portability #?(:cljs :refer-macros :default :refer) [when-var-exists]])) + +(when-var-exists clojure.core/vector? + (deftest test-vector? + (are [expected x] (= expected (vector? x)) + true [1 2 3] + false (sorted-map :a 1) + false (sorted-set :a) + false '(1 2 3) ; lists are naturally seqs + false (hash-map :a 1) + false (array-map :a 1) + false (hash-set :a) + false (seq [1 2 3]) + false (seq (sorted-map :a 1)) + false (seq (sorted-set :a)) + false (range 0 10) + false (range) + false nil + false 1 + false 1N + false 1.0 + false 1.0M + false :a-keyword + false 'a-sym + false "a string" + false \a + false (object-array 3)))) From e4c2caf283dde4d3329e6f6f98b0daa6194c8dd7 Mon Sep 17 00:00:00 2001 From: Dave Roberts Date: Wed, 19 Feb 2025 22:47:55 -0600 Subject: [PATCH 2/4] Add tests for `list?` --- test/clojure/core_test/list_qmark.cljc | 29 ++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 test/clojure/core_test/list_qmark.cljc diff --git a/test/clojure/core_test/list_qmark.cljc b/test/clojure/core_test/list_qmark.cljc new file mode 100644 index 0000000..fe5214e --- /dev/null +++ b/test/clojure/core_test/list_qmark.cljc @@ -0,0 +1,29 @@ +(ns clojure.core-test.list-qmark + (:require [clojure.test :as t :refer [deftest testing is are]] + [clojure.core-test.portability #?(:cljs :refer-macros :default :refer) [when-var-exists]])) + +(when-var-exists clojure.core/list? + (deftest test-list? + (are [expected x] (= expected (list? x)) + false [1 2 3] + false (sorted-map :a 1) + false (sorted-set :a) + true '(1 2 3) ; lists are naturally seqs + false (hash-map :a 1) + false (array-map :a 1) + false (hash-set :a) + false (seq [1 2 3]) + false (seq (sorted-map :a 1)) + false (seq (sorted-set :a)) + false (range 0 10) + false (range) + false nil + false 1 + false 1N + false 1.0 + false 1.0M + false :a-keyword + false 'a-sym + false "a string" + false \a + false (object-array 3)))) From e3693be162342adc9c4f315eee4e21ff7eb36815 Mon Sep 17 00:00:00 2001 From: Dave Roberts Date: Wed, 19 Feb 2025 22:51:22 -0600 Subject: [PATCH 3/4] Clean up comments --- test/clojure/core_test/list_qmark.cljc | 2 +- test/clojure/core_test/vector_qmark.cljc | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/test/clojure/core_test/list_qmark.cljc b/test/clojure/core_test/list_qmark.cljc index fe5214e..2750896 100644 --- a/test/clojure/core_test/list_qmark.cljc +++ b/test/clojure/core_test/list_qmark.cljc @@ -8,7 +8,7 @@ false [1 2 3] false (sorted-map :a 1) false (sorted-set :a) - true '(1 2 3) ; lists are naturally seqs + true '(1 2 3) false (hash-map :a 1) false (array-map :a 1) false (hash-set :a) diff --git a/test/clojure/core_test/vector_qmark.cljc b/test/clojure/core_test/vector_qmark.cljc index 10b43c9..5f2b06a 100644 --- a/test/clojure/core_test/vector_qmark.cljc +++ b/test/clojure/core_test/vector_qmark.cljc @@ -8,7 +8,7 @@ true [1 2 3] false (sorted-map :a 1) false (sorted-set :a) - false '(1 2 3) ; lists are naturally seqs + false '(1 2 3) false (hash-map :a 1) false (array-map :a 1) false (hash-set :a) From 7f37545411d3b3889be045d79b0dab1242aec1e5 Mon Sep 17 00:00:00 2001 From: Dave Roberts Date: Sat, 1 Mar 2025 13:52:52 -0600 Subject: [PATCH 4/4] Add test for MapEntry satisfying `vector?` --- test/clojure/core_test/vector_qmark.cljc | 1 + 1 file changed, 1 insertion(+) diff --git a/test/clojure/core_test/vector_qmark.cljc b/test/clojure/core_test/vector_qmark.cljc index 5f2b06a..b895395 100644 --- a/test/clojure/core_test/vector_qmark.cljc +++ b/test/clojure/core_test/vector_qmark.cljc @@ -6,6 +6,7 @@ (deftest test-vector? (are [expected x] (= expected (vector? x)) true [1 2 3] + true (first {:a 1}) ; map entries are also vectors false (sorted-map :a 1) false (sorted-set :a) false '(1 2 3)