]> gitweb.factorcode.org Git - factor.git/blob - unmaintained/oracle/oracle-tests.factor
2f957ac4a93ef9bf019d9cd8de8c4b909a8c5ce3
[factor.git] / unmaintained / oracle / oracle-tests.factor
1 USING: oracle oracle.liboci prettyprint tools.test
2 kernel ;
3
4 [
5     "testuser" "testpassword" "//localhost/test1" log-on .
6
7     allocate-statement-handle
8
9     "CREATE TABLE TESTTABLE ( COL1 VARCHAR(40), COL2 NUMBER)" prepare-statement
10
11     [ t ] [ execute-statement ] unit-test
12
13     "INSERT INTO TESTTABLE (COL1, COL2) VALUES('hello', 50)" prepare-statement
14
15     [ t ] [ execute-statement ] unit-test
16
17     "INSERT INTO TESTTABLE (COL1, COL2) VALUES('hi', 60)" prepare-statement
18
19     [ t ] [ execute-statement ] unit-test
20
21     "INSERT INTO TESTTABLE (COL1, COL2) VALUES('bye', 70)" prepare-statement
22
23     [ t ] [ execute-statement ] unit-test
24
25     "COMMIT" prepare-statement
26
27     [ t ] [ execute-statement ] unit-test
28
29     "SELECT * FROM TESTTABLE" prepare-statement
30
31     1 SQLT_STR define-by-position run-query
32
33     [ V{ "hello" "hi" "bye" "50" "60" "70" } ] [
34     2 SQLT_STR define-by-position run-query gather-results
35     ] unit-test
36
37     clear-result
38
39     "UPDATE TESTTABLE SET COL2 = 10 WHERE COL1='hi'" prepare-statement
40
41     [ t ] [ execute-statement ] unit-test
42
43     "COMMIT" prepare-statement
44
45     [ t ] [ execute-statement ] unit-test
46
47     "SELECT * FROM TESTTABLE WHERE COL1 = 'hi'" prepare-statement
48
49     [ V{ "10" } ] [
50     2 SQLT_STR define-by-position run-query gather-results
51     ] unit-test
52
53     clear-result
54
55     "DROP TABLE TESTTABLE" prepare-statement
56
57     execute-statement
58
59     free-statement-handle log-off clean-up terminate
60 ] drop