@Test
public void testGetDataSourceInstanceConstructorWithArguments()
                        throws ClassNotFoundException, NoSuchMethodException, IllegalAccessException,
                        InvocationTargetException, InstantiationException {

    DataSourceConnectionProvider.DataSource config = new DataSourceConnectionProvider.DataSource();
    config.setJavaClass( DataSourceMock.class.getCanonicalName() );
    DataSourceConnectionProvider.DataSource.Argument stringArgument = new DataSourceConnectionProvider.DataSource.Argument();
    stringArgument.setJavaClass( "java.lang.String" );
    stringArgument.setValue( "aeiou" );
    config.getArgument().add( stringArgument );
    DataSourceConnectionProvider.DataSource.Argument intArgument = new DataSourceConnectionProvider.DataSource.Argument();
    intArgument.setJavaClass( "java.lang.Integer" );
    intArgument.setValue( "4711" );
    config.getArgument().add( intArgument );
    DataSourceMock ds = (DataSourceMock) initializer.getDataSourceInstance( config );
    assertNotNull( ds );
    assertTrue( ds instanceof DataSourceMock );
    Assert.assertEquals( "aeiou", ds.getStringConstructorArg() );
    Assert.assertEquals( 4711, ds.getIntConstructorArg() );
}