(use-modules (srfi srfi-64) (dictionary) (mutate)) (define simple-dict (create-dictionary '("word"))) (define complex-dict (create-dictionary '("Again" "the" "thirst" "quencher" "of" "wolves" "embarked" "on" "a" "well" "prepared" "expedition" "eastward" "the" "generous" "ruler" "moved" "the" "bitter" "heart" "of" "the" "snake" "across" "the" "fire"))) (test-begin "dictionary") (test-assert "create-dictionary returns hashtable" (hash-table? (create-dictionary '()))) (define dict (create-dictionary '("word"))) (test-equal "list-keys-single" '("word") (dict-keys-ref simple-dict)) (test-equal "count-values-single" 1 (dict-values-ref simple-dict)) (test-equal "retrieve single" 1 (dict-occur-ref complex-dict "wolves")) (test-equal "retrieve double" 2 (dict-occur-ref complex-dict "of")) (test-equal "retrieve quintuple" 5 (dict-occur-ref complex-dict "the")) (test-equal "retrieve zero" 0 (dict-occur-ref complex-dict "king")) (test-equal "list-keys-sentence" '("Again" "a" "across" "bitter" "eastward" "embarked" "expedition" "fire" "generous" "heart" "moved" "of" "on" "prepared" "quencher" "ruler" "snake" "the" "thirst" "well" "wolves") (sort (dict-keys-ref complex-dict) string