/** Test unmarshalling of a Internal Pool datasource */
  public void testInternalPoolDatasourceUnmarshallingWithEmptyPassword() throws Exception {

    DatasourceConfiguration datasource =
        parseDatasource(
            new ByteArrayInputStream(ANONYMOUS_INTERNAL_POOL_DATASOURCE_EMPTY_PASSWORD.getBytes()));

    InternalPoolDatasource internalPoolDatasource = (InternalPoolDatasource) datasource;

    assertEquals("", internalPoolDatasource.getPassword());
  }
  /** Test unmarshalling of a Internal Pool datasource */
  public void testInternalPoolDatasourceUnmarshalling() throws Exception {
    DatasourceConfiguration datasource =
        parseDatasource(new ByteArrayInputStream(ANONYMOUS_INTERNAL_POOL_DATASOURCE.getBytes()));

    assertEquals(DataSourceType.INTERNAL_POOL_DATASOURCE, datasource.getType());

    InternalPoolDatasource internalPoolDatasource = (InternalPoolDatasource) datasource;

    assertEquals("org.gjt.mm.mysql.Driver", internalPoolDatasource.getDriverClass());
    assertEquals(
        "jdbc:mysql://127.0.0.1/logging?database=logging", internalPoolDatasource.getUrl());
    assertEquals("db_user", internalPoolDatasource.getUsername());
    assertEquals("db_password", internalPoolDatasource.getPassword());
    assertEquals("30", internalPoolDatasource.getMaxActive());
    assertEquals("10", internalPoolDatasource.getMaxIdle());
    assertEquals("5", internalPoolDatasource.getMaxWait());
  }