Files
2026-02-08 11:20:43 -10:00

30 lines
1.1 KiB
Clojure
Vendored

(ns tech.v3.dataset.object-columns-test
(:require [clojure.test :refer [deftest is]]
[tech.v3.dataset :as ds]
[tech.v3.datatype :as dtype]
[tech.v3.datatype.datetime :as dtype-dt]
[tech.v3.tensor :as dtt]))
(deftest basic-object-columns
(let [src-ds (ds/->dataset {:a (range 10)
:b (repeat 10 {:a 1 :b 2})})]
(is (= :persistent-map
(dtype/get-datatype (src-ds :b))))
(is (= (vec (repeat 10 {:a 1 :b 2}))
(vec (dtype/->reader (src-ds :b)))))))
(deftest involved-object-columns
(let [src-ds (ds/->dataset
{:dates (list "2000-01-01" "2000-02-01" "2000-03-01"
"2000-04-01" "2000-05-01")
:integers (range 5)
:durations (repeat 5 (dtype-dt/duration))
:doubles (map double (range 5))
:tensors (repeat 5 (dtt/->tensor (partition 2 (range 4))))})]
(is (= #{:float64 :string :int64 :tensor
:packed-duration}
(->> (map dtype/get-datatype (vals src-ds))
set)))))