catch (Throwable ex) { StringWriter writer = new StringWriter(); DatabaseIO   dbIo   = new DatabaseIO();  dbIo.write(expected, writer);  getLog().error("Expected model:\n" + writer.toString());  writer = new StringWriter(); dbIo.write(actual, writer);  getLog().error("Actual model:\n" + writer.toString());  if (ex instanceof Error) { throw (Error)ex; } else { throw new DdlUtilsException(ex); } }
assertEquals(expected, value);
    protected void assertEquals(Database expected, Database actual)    {        try        {            assertEquals("Model names do not match.",                         expected.getName(),                         actual.getName());            assertEquals("Not the same number of tables.",                         expected.getTableCount(),                         actual.getTableCount());            for (int tableIdx = 0; tableIdx < actual.getTableCount(); tableIdx++)            {                assertEquals(expected.getTable(tableIdx),                             actual.getTable(tableIdx));            }        }        catch (Throwable ex)        {            StringWriter writer = new StringWriter();            DatabaseIO   dbIo   = new DatabaseIO();            dbIo.write(expected, writer);            getLog().error("Expected model:\n" + writer.toString());            writer = new StringWriter();            dbIo.write(actual, writer);            getLog().error("Actual model:\n" + writer.toString());            if (ex instanceof Error)            {                throw (Error)ex;            }            else            {                throw new DdlUtilsException(ex);            }        }    }