KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > h2 > test > db > TestScriptSimple


1 /*
2  * Copyright 2004-2006 H2 Group. Licensed under the H2 License, Version 1.0 (http://h2database.com/html/license.html).
3  * Initial Developer: H2 Group
4  */

5 package org.h2.test.db;
6
7 import java.io.InputStream JavaDoc;
8 import java.io.InputStreamReader JavaDoc;
9 import java.io.LineNumberReader JavaDoc;
10 import java.sql.Connection JavaDoc;
11 import java.sql.ResultSet JavaDoc;
12
13 import org.h2.test.TestBase;
14 import org.h2.util.ScriptReader;
15
16 public class TestScriptSimple extends TestBase {
17
18     private Connection JavaDoc conn;
19     public void test() throws Exception JavaDoc {
20         if(config.memory || config.big || config.networked) {
21             return;
22         }
23         deleteDb("scriptSimple");
24         reconnect();
25         String JavaDoc infile = "org/h2/test/testSimple.in.txt";
26         InputStream JavaDoc is = getClass().getClassLoader().getResourceAsStream(infile);
27         LineNumberReader JavaDoc lineReader = new LineNumberReader JavaDoc(new InputStreamReader JavaDoc(is, "Cp1252"));
28         ScriptReader reader = new ScriptReader(lineReader);
29         while(true) {
30             String JavaDoc sql = reader.readStatement();
31             if(sql == null) {
32                 break;
33             }
34             sql = sql.trim();
35 // System.out.println(sql);
36
if("@reconnect".equals(sql)) {
37                 reconnect();
38             } else if(sql.length() == 0) {
39                 // ignore
40
} else if(sql.startsWith("select")) {
41                 ResultSet JavaDoc rs = conn.createStatement().executeQuery(sql);
42                 while(rs.next()) {
43                     String JavaDoc expected = reader.readStatement().trim();
44                     String JavaDoc got = "> " + rs.getString(1);
45                     check(expected, got);
46                 }
47             } else {
48                 conn.createStatement().execute(sql);
49             }
50         }
51         conn.close();
52     }
53     
54     private void reconnect() throws Exception JavaDoc {
55         if(conn != null) {
56             conn.close();
57         }
58         conn = getConnection("scriptSimple");
59     }
60     
61
62 }
63
Popular Tags