diff options
| author | 2026-01-31 10:47:20 +0100 | |
|---|---|---|
| committer | 2026-02-04 18:37:43 -0600 | |
| commit | 79e9a40961593dedcd9c8af260d67bcbd3dc4dd0 (patch) | |
| tree | 3bba33232a27c2f9a6c1371a7223b31b7fb4ad89 | |
| parent | Remove win11 only flag (diff) | |
Fix select-keys for false values
| -rw-r--r-- | spork/misc.janet | 2 | ||||
| -rw-r--r-- | test/suite-misc.janet | 3 |
2 files changed, 4 insertions, 1 deletions
diff --git a/spork/misc.janet b/spork/misc.janet index 2837f6b..85eea08 100644 --- a/spork/misc.janet +++ b/spork/misc.janet @@ -257,7 +257,7 @@ "Returns new table with selected `keyz` from dictionary `data`." [data keyz] (def res @{}) - (loop [k :in keyz :when (data k)] + (loop [k :in keyz :when (not= nil (data k))] (put res k (data k))) res) diff --git a/test/suite-misc.janet b/test/suite-misc.janet index 38b9367..04ae410 100644 --- a/test/suite-misc.janet +++ b/test/suite-misc.janet @@ -89,6 +89,9 @@ (deep= (misc/select-keys {1 2 3 4 5 6} [1]) @{1 2}) "selects key from dictionary") (assert + (deep= (misc/select-keys {1 false 3 4 5 6} [1]) @{1 false}) + "selects key with false value") +(assert (deep= (misc/select-keys {1 2 3 4 5 {:a :b}} [1 5]) @{1 2 5 {:a :b}}) "selects keys from nested dictionary") |
