Some ideas:
- CREATE TABLE foo will fail when a table foo exists
- DBI should report the error
- deploy should fail
- SELECT 42 AS result FROM foo should fail when no table and no view named foo exists
- You can enumerate the tables in the database, and you can enumerate the columns in the table.
Testing one table is usually not sufficient, as you usually have more than one table, and you may add or remove tables as development goes on. The same applies to columns in the tables. Ideally, deploy() should handle all these cases.
Alexander
--
Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so". ;-)