diff options
Diffstat (limited to 'tests/nutrient-measurement-model.rkt')
| -rw-r--r-- | tests/nutrient-measurement-model.rkt | 69 |
1 files changed, 0 insertions, 69 deletions
diff --git a/tests/nutrient-measurement-model.rkt b/tests/nutrient-measurement-model.rkt deleted file mode 100644 index 010c812..0000000 --- a/tests/nutrient-measurement-model.rkt +++ /dev/null @@ -1,69 +0,0 @@ -#lang racket - -(module+ test - (require rackunit - rackunit/text-ui - "../db/conn.rkt" - "../db/migrations.rkt" - "../models/nutrient.rkt" - "../models/nutrient-measurement.rkt") - - (define measurement-date "2025-09-01") - - (run-tests - (test-suite - "Nutrient measurement model" - #:before (λ () - (connect! #:path 'memory) - ;; (connect! #:path "test.sqlite3") - (migrate-all!) - (create-nutrient! "Nitrogen" "N") - (create-nutrient! "Phosphorus" "P") - (create-nutrient! "Potassium" "K")) - #:after (λ () - (disconnect!)) - - (test-case "Create measurement with date and values" - (define nitrogen (get-nutrient #:name "Nitrogen")) - (define phosphorus (get-nutrient #:name "Phosphorus")) - (create-nutrient-measurement! measurement-date - `((,nitrogen . 12.3) - (,phosphorus . 4.5))) - (check-equal? (length (get-nutrient-measurements)) 1) - (define nm (get-nutrient-measurement #:measured-on measurement-date)) - (check-true (nutrient-measurement? nm)) - (check-equal? (nutrient-measurement-date nm) measurement-date)) - - (test-case "Check all measurement values" - (define nitrogen (get-nutrient #:name "Nitrogen")) - (define phosphorus (get-nutrient #:name "Phosphorus")) - - (define nm (get-nutrient-measurement #:measured-on measurement-date)) - (check-equal? (get-nutrient-measurement-value nm nitrogen) 12.3) - (check-equal? (get-nutrient-measurement-value nm phosphorus) 4.5) - - (define nmv (nutrient-measurement-values nm)) - (check-equal? (get-nutrient-measurement-values nm) nmv - "return value of get-nutrient-measurement-values ≠ nutrient-measurement-values struct accessor") - (check-equal? (length nmv) 2) - (check-equal? (cdr (assoc nitrogen nmv)) 12.3) - (check-equal? (cdr (assoc phosphorus nmv)) 4.5)) - - (test-case "Retrieve latest measurement values" - (define nitrogen (get-nutrient #:name "Nitrogen")) - (define phosphorus (get-nutrient #:name "Phosphorus")) - (define second-measurement-date "2025-09-02") - (create-nutrient-measurement! second-measurement-date - `((,nitrogen . 6.7) - (,phosphorus . 8.9))) - - (check-equal? (get-latest-nutrient-measurement-value nitrogen) 6.7) - (check-equal? (get-latest-nutrient-measurement-value phosphorus) 8.9)) - - (test-case "Delete measurement and cascade to measurement values" - (define nm (get-nutrient-measurement #:measured-on measurement-date)) - (delete-nutrient-measurement! nm) - (check-false (get-nutrient-measurement #:id (nutrient-measurement-id nm))) - (check-equal? (length (get-nutrient-measurements)) 1 - "wrong number of nutrient measurements were deleted") - (check-true (null? (get-nutrient-measurement-values nm))))))) |