Mercurial > core / lisp/lib/q/tests/suite.lisp
changeset 582: |
568c39371122 |
parent: |
571685ae64f1
|
child: |
35bb0d5ec95e |
author: |
Richard Westhaver <ellis@rwest.io> |
date: |
Wed, 07 Aug 2024 21:09:43 -0400 |
permissions: |
-rw-r--r-- |
description: |
sql updates, fuzzz |
1 ;;; tests.lisp --- Q Tests 13 (is (make-instance 'query-engine 14 :parser (make-instance 'query-parser) 15 :optimizer (make-instance 'sql-optimizer) 18 (deftest sql-select () 19 (setf (gethash "FOO" tbl) (make-df nil)) 20 (with-sql (expr "SELECT I FROM FOO") 21 (is (typep expr 'sql-select)) 22 (let ((tbl (make-hash-table :test 'equalp))) 23 (is (gethash "FOO" tbl)) 24 (make-sql-data-frame expr tbl)))) 27 (with-sql (expr "1 + 2 * 3") 28 (is (typep expr 'sql-math-expression)) 29 (is (typep (rhs expr) 'sql-math-expression)) 30 (is (typep (lhs expr) 'sql-number)))) 32 ;; https://www.cpp.edu/~jrfisher/www/prolog_tutorial/2_1.html 33 (deftest dql (:skip t) 50 (color 1 red a) (color 1 red b) 51 (color 2 blue a) (color 2 blue b) 52 (color 3 green a) (color 3 green b) 53 (color 4 yellow a) (color 4 blue b) 54 (color 5 blue a) (color 5 green b) 56 (:- (conflict ?coloring) 58 (color ?x ?color ?coloring) 59 (color ?y ?color ?coloring)) 62 (:- (conflict ?r1 ?r2 ?coloring) 64 (color ?r1 ?color ?coloring) 65 (color ?r2 ?color ?coloring)) 68 ;; there are several infix operators. 70 ;; let's mark variables with ? prefix. 74 (forall (conflict ?coloring) 75 (writeln (conflict ?coloring))) 76 (forall (conflict ?r1 ?r2 ?coloring) 77 (writeln (conflict ?r1 ?r2 ?coloring))) 78 (forall (conflict ?r1 ?r2 ?coloring) 79 (and (print-sexp (conflict ?r1 ?r2 ?coloring)) 83 (:- (initialization main)))