01: /*
02: * Copyright 2001-2007 Geert Bevin <gbevin[remove] at uwyn dot com>
03: * Distributed under the terms of either:
04: * - the common development and distribution license (CDDL), v1.0; or
05: * - the GNU Lesser General Public License, v2.1 or later
06: * $Id: TestDropTableMysql.java 3634 2007-01-08 21:42:24Z gbevin $
07: */
08: package com.uwyn.rife.database.queries;
09:
10: import com.uwyn.rife.database.exceptions.TableNameRequiredException;
11:
12: public class TestDropTableMysql extends TestDropTable {
13: public TestDropTableMysql(String name) {
14: super (name);
15: }
16:
17: public void testInstantiationMysql() {
18: DropTable query = new DropTable(mMysql);
19: assertNotNull(query);
20: try {
21: query.getSql();
22: fail();
23: } catch (TableNameRequiredException e) {
24: assertEquals(e.getQueryName(), "DropTable");
25: }
26: }
27:
28: public void testIncompleteQueryMysql() {
29: DropTable query = new DropTable(mMysql);
30: try {
31: query.getSql();
32: fail();
33: } catch (TableNameRequiredException e) {
34: assertEquals(e.getQueryName(), "DropTable");
35: }
36: query.table("tablename");
37: assertNotNull(query.getSql());
38: }
39:
40: public void testClearMysql() {
41: DropTable query = new DropTable(mMysql);
42: query.table("tablename");
43: assertNotNull(query.getSql());
44: query.clear();
45: try {
46: query.getSql();
47: fail();
48: } catch (TableNameRequiredException e) {
49: assertEquals(e.getQueryName(), "DropTable");
50: }
51: }
52:
53: public void testOneTableMysql() {
54: DropTable query = new DropTable(mMysql);
55: query.table("tabletodrop");
56: assertEquals(query.getSql(), "DROP TABLE tabletodrop");
57: execute(query);
58: }
59:
60: public void testMultipleTablesMysql() {
61: DropTable query = new DropTable(mMysql);
62: query.table("tabletodrop1").table("tabletodrop2").table(
63: "tabletodrop3");
64: assertEquals(query.getSql(),
65: "DROP TABLE tabletodrop1, tabletodrop2, tabletodrop3");
66: execute(query);
67: }
68:
69: public void testCloneMysql() {
70: DropTable query = new DropTable(mMysql);
71: query.table("tabletodrop1").table("tabletodrop2").table(
72: "tabletodrop3");
73: DropTable query_clone = query.clone();
74: assertEquals(query.getSql(), query_clone.getSql());
75: assertTrue(query != query_clone);
76: execute(query_clone);
77: }
78: }
|