--- /dev/null
+(require 'riece-cache)
+
+(luna-define-class test-riece-cache (lunit-test-case))
+
+(luna-define-method test-riece-cache-get-set ((case test-riece-cache))
+ (let ((cache (riece-make-cache 3)))
+ (riece-cache-set cache "0" 0)
+ (lunit-assert-2
+ case
+ (= (riece-cache-get cache "0") 0))))
+
+(luna-define-method test-riece-cache-set-overflow ((case test-riece-cache))
+ (let ((cache (riece-make-cache 3)))
+ (riece-cache-set cache "0" 0)
+ (lunit-assert-2
+ case
+ (= (riece-cache-hash-length cache) 1))
+ (riece-cache-set cache "1" 1)
+ (lunit-assert-2
+ case
+ (= (riece-cache-hash-length cache) 2))
+ (riece-cache-set cache "2" 2)
+ (lunit-assert-2
+ case
+ (= (riece-cache-hash-length cache) 3))
+ (riece-cache-set cache "3" 3)
+ (lunit-assert-2
+ case
+ (= (riece-cache-hash-length cache) 3))
+ (lunit-assert-2
+ case
+ (null (riece-cache-get cache "0")))))
+
+(luna-define-method test-riece-cache-get-increase-key ((case test-riece-cache))
+ (let ((cache (riece-make-cache 3)))
+ (riece-cache-set cache "0" 0)
+ (riece-cache-set cache "1" 1)
+ (riece-cache-set cache "2" 2)
+ (lunit-assert-2
+ case
+ (equal (riece-cache-node-key (riece-cache-first cache)) "0"))
+ (lunit-assert-2
+ case
+ (equal (riece-cache-node-key (riece-cache-last cache)) "2"))
+ (riece-cache-get cache "1")
+ (lunit-assert-2
+ case
+ (equal (riece-cache-node-key (riece-cache-last cache)) "1"))))
+
+(luna-define-method test-riece-cache-delete ((case test-riece-cache))
+ (let ((cache (riece-make-cache 3)))
+ (riece-cache-set cache "0" 0)
+ (riece-cache-set cache "1" 1)
+ (riece-cache-set cache "2" 2)
+ (riece-cache-delete cache "1")
+ (lunit-assert-2
+ case
+ (= (riece-cache-hash-length cache) 2))
+ (lunit-assert-2
+ case
+ (null (riece-cache-get cache "1")))
+ (riece-cache-set cache "1" 1)
+ (riece-cache-delete cache "0")
+ (lunit-assert-2
+ case
+ (= (riece-cache-hash-length cache) 2))
+ (lunit-assert-2
+ case
+ (null (riece-cache-get cache "0")))
+ (riece-cache-set cache "0" 0)
+ (riece-cache-delete cache "2")
+ (lunit-assert-2
+ case
+ (= (riece-cache-hash-length cache) 2))
+ (lunit-assert-2
+ case
+ (null (riece-cache-get cache "2")))))