721b098b41e72a839f691ce011f4d5331e6b0411
[umlisp.git] / tests / basic.lisp
1 ;;;; -*- Mode: Lisp; Syntax: ANSI-Common-Lisp; Base: 10; Package: umlisp -*-
2 ;;;; *************************************************************************
3 ;;;; FILE IDENTIFICATION
4 ;;;;
5 ;;;; Name:          basic.lisp
6 ;;;; Purpose:       Basic tests for UMLisp
7 ;;;; Author:        Kevin M. Rosenberg
8 ;;;; Date Started:  May 2003
9 ;;;;
10 ;;;; $Id$
11 ;;;;
12 ;;;; This file, part of UMLisp, is
13 ;;;;    Copyright (c) 2000-2002 by Kevin M. Rosenberg, M.D.
14 ;;;;
15 ;;;; UMLisp users are granted the rights to distribute AND use this software
16 ;;;; as governed by the terms of the GNU General Public License.
17 ;;;; *************************************************************************
18
19 (in-package #:umlisp-tests)
20
21 (setq *rt-basic*
22   '(
23     (deftest :qrystr/1 (umlisp::query-string mrconso (cui lui) nil nil nil)
24       "SELECT CUI,LUI FROM MRCONSO")
25
26     (deftest :qrystr/1e (umlisp::query-string-eval 'mrconso '(cui lui) nil nil nil)
27       "SELECT CUI,LUI FROM MRCONSO")
28
29     (deftest :qrystr/2 (umlisp::query-string mrconso (cui lui) 0 nil nil)
30       "SELECT CUI,LUI FROM MRCONSO AND KCUILRL<=0")
31
32     (deftest :qrystr/2e (umlisp::query-string-eval 'mrconso '(cui lui) 0 nil nil)
33       "SELECT CUI,LUI FROM MRCONSO AND KCUILRL<=0")
34
35     (deftest :qrystr/3 (umlisp::query-string mrconso (cui lui) nil cui 5)
36       "SELECT CUI,LUI FROM MRCONSO WHERE CUI='5'")
37
38     (deftest :qrystr/3e (umlisp::query-string-eval 'mrconso '(cui lui) nil 'cui 5)
39       "SELECT CUI,LUI FROM MRCONSO WHERE CUI='5'")
40
41     (deftest :qrystr/4 (umlisp::query-string mrconso (cui lui) nil kpfstr "Abc")
42       "SELECT CUI,LUI FROM MRCONSO WHERE KPFSTR='Abc'")
43
44     (deftest :qrystr/4e (umlisp::query-string-eval 'mrconso '(cui lui) nil 'kpfstr "Abc")
45       "SELECT CUI,LUI FROM MRCONSO WHERE KPFSTR='Abc'")
46
47     (deftest :qrystr/5 (umlisp::query-string mrconso (cui lui) 2 cui 5 :single t)
48       "SELECT CUI,LUI FROM MRCONSO WHERE CUI='5' AND KCUILRL<=2 LIMIT 1")
49
50     (deftest :qrystr/5e (umlisp::query-string-eval 'mrconso '(cui lui) 2 'cui 5 :single t)
51       "SELECT CUI,LUI FROM MRCONSO WHERE CUI='5' AND KCUILRL<=2 LIMIT 1")
52
53     (deftest :qrystr/6 (umlisp::query-string mrdef (sab def) 2 cui 39 :lrl ksrl :single t)
54       "SELECT SAB,DEF FROM MRDEF WHERE CUI='39' AND KSRL<=2 LIMIT 1")
55
56     (deftest :qrystr/6e (umlisp::query-string-eval 'mrdef '(sab def) 2 'cui 39 :lrl 'ksrl :single t)
57       "SELECT SAB,DEF FROM MRDEF WHERE CUI='39' AND KSRL<=2 LIMIT 1")
58
59     (deftest :qrystr/7 (umlisp::query-string mrdef (sab def) 2 cui 39 :lrl ksrl :order (cui asc))
60       "SELECT SAB,DEF FROM MRDEF WHERE CUI='39' AND KSRL<=2 ORDER BY CUI asc")
61
62     (deftest :qrystr/7e (umlisp::query-string-eval 'mrdef '(sab def) 2 'cui 39 :lrl 'ksrl :order '(cui asc))
63       "SELECT SAB,DEF FROM MRDEF WHERE CUI='39' AND KSRL<=2 ORDER BY CUI asc")
64
65     (deftest :qrystr/8 (umlisp::query-string mrdef (sab def) 2 cui 39 :lrl ksrl
66                         :order (cui asc def desc))
67       "SELECT SAB,DEF FROM MRDEF WHERE CUI='39' AND KSRL<=2 ORDER BY CUI asc,DEF desc")
68
69     (deftest :qrystr/8e (umlisp::query-string-eval 'mrdef '(sab def) 2 'cui 39 :lrl 'ksrl
70                          :order '(cui asc def desc))
71       "SELECT SAB,DEF FROM MRDEF WHERE CUI='39' AND KSRL<=2 ORDER BY CUI asc,DEF desc")
72
73     (deftest :ui/1 (umlisp::parse-cui "C0002341") 2341)
74     (deftest :ui/2 (umlisp::parse-lui "L0002341") 2341)
75     (deftest :ui/3 (umlisp::parse-sui "S0000000") 0)
76     (deftest :ui/4 (umlisp::parse-tui "T123") 123)
77     (deftest :ui/5 (fmt-cui 2341) "C0002341")
78     (deftest :ui/6 (fmt-lui 2341) "L0002341")
79     (deftest :ui/7 (fmt-sui 2341) "S0002341")
80     (deftest :ui/8 (fmt-tui 231) "T231")
81     (deftest :ui/9 (fmt-tui 231) "T231")
82     (deftest :ui/10 (fmt-eui 231) "E0000231")
83     (deftest :ui/11 (umlisp::make-cuisui 5 11) 50000011)
84     (deftest :ui/12 (umlisp::decompose-cuisui 50000011) 5 11)
85     (deftest :ui/13 (umlisp::parse-eui "E00002311") 2311)
86     (deftest :ui/14 (umlisp::parse-lui "1234") 1234)
87     (deftest :ui/15 (umlisp::parse-lui 1234) 1234)
88
89     ))