racket/collects/meta/drdr2/tests/db.rkt
2010-10-21 22:29:28 -07:00

32 lines
922 B
Racket

#lang racket
(require tests/eli-tester
"../lib/db.rkt")
(test
(local [(define db (db-connect "localhost:27017:test" #:init? #t))
(struct num (n) #:prefab)]
(test
(for ([i (in-range 10)])
(test
(for ([j (in-range 10)])
(test
(db-set! db (num (+ i j)) (number->string i) (number->string j))))
(sort (db-list db (number->string i)) string<=?) =>
(for/list ([j (in-range 10)]) (number->string j))
(for ([j (in-range 10)])
(test
(db-ref db (number->string i) (number->string j)) =>
(num (+ i j))))
(for ([j (in-range 10)])
(test
(db-set! db (num (* i j)) (number->string i) (number->string j))))
(for ([j (in-range 10)])
(test
(db-ref db (number->string i) (number->string j)) =>
(num (* i j))))))
(db-close! db))))