(import srfi-64) (include "assets.scm") (import downstroke/assets) (test-begin "assets") (test-group "make-asset-registry" (test-assert "returns a value" (make-asset-registry))) (test-group "asset-set! and asset-ref" (let ((reg (make-asset-registry))) (test-equal "missing key returns #f" #f (asset-ref reg 'missing)) (asset-set! reg 'my-tilemap "data") (test-equal "stored value is retrievable" "data" (asset-ref reg 'my-tilemap)) (asset-set! reg 'my-tilemap "updated") (test-equal "overwrite replaces value" "updated" (asset-ref reg 'my-tilemap)) (asset-set! reg 'other 42) (test-equal "multiple keys coexist" "updated" (asset-ref reg 'my-tilemap)) (test-equal "second key retrievable" 42 (asset-ref reg 'other)))) (test-end "assets")