/* * Copyright 2001-2008 Geert Bevin (gbevin[remove] at uwyn dot com) * Licensed under the Apache License, Version 2.0 (the "License") * $Id: TestDropTableHsqldb.java 3918 2008-04-14 17:35:35Z gbevin $ */ package com.uwyn.rife.database.queries; import com.uwyn.rife.database.exceptions.TableNameRequiredException; import com.uwyn.rife.database.exceptions.UnsupportedSqlFeatureException; public class TestDropTableHsqldb extends TestDropTable { public TestDropTableHsqldb(String name) { super(name); } public void testInstantiationHsqldb() { DropTable query = new DropTable(mHsqldb); assertNotNull(query); try { query.getSql(); fail(); } catch (TableNameRequiredException e) { assertEquals(e.getQueryName(), "DropTable"); } } public void testIncompleteQueryHsqldb() { DropTable query = new DropTable(mHsqldb); try { query.getSql(); fail(); } catch (TableNameRequiredException e) { assertEquals(e.getQueryName(), "DropTable"); } query.table("tablename"); assertNotNull(query.getSql()); } public void testClearHsqldb() { DropTable query = new DropTable(mHsqldb); query.table("tablename"); assertNotNull(query.getSql()); query.clear(); try { query.getSql(); fail(); } catch (TableNameRequiredException e) { assertEquals(e.getQueryName(), "DropTable"); } } public void testOneTableHsqldb() { DropTable query = new DropTable(mHsqldb); query.table("tabletodrop"); assertEquals(query.getSql(), "DROP TABLE tabletodrop"); execute(query); } public void testMultipleTablesHsqldb() { DropTable query = new DropTable(mHsqldb); query.table("tabletodrop1") .table("tabletodrop2") .table("tabletodrop3"); try { query.getSql(); fail(); } catch (UnsupportedSqlFeatureException e) { assertTrue(true); } } public void testCloneHsqldb() { DropTable query = new DropTable(mHsqldb); query.table("tabletodrop"); DropTable query_clone = query.clone(); assertEquals(query.getSql(), query_clone.getSql()); assertTrue(query != query_clone); execute(query_clone); } }