当前位置: 首页>>代码示例>>Java>>正文


Java ValueMetaDate.setOriginalColumnType方法代码示例

本文整理汇总了Java中org.pentaho.di.core.row.value.ValueMetaDate.setOriginalColumnType方法的典型用法代码示例。如果您正苦于以下问题:Java ValueMetaDate.setOriginalColumnType方法的具体用法?Java ValueMetaDate.setOriginalColumnType怎么用?Java ValueMetaDate.setOriginalColumnType使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.pentaho.di.core.row.value.ValueMetaDate的用法示例。


在下文中一共展示了ValueMetaDate.setOriginalColumnType方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: testOverridesToVerticaDatabaseMeta

import org.pentaho.di.core.row.value.ValueMetaDate; //导入方法依赖的package包/类
@Test
public void testOverridesToVerticaDatabaseMeta() throws Exception {
  Vertica5DatabaseMeta nativeMeta = new Vertica5DatabaseMeta();
  nativeMeta.setAccessType( DatabaseMeta.TYPE_ACCESS_NATIVE );
  Vertica5DatabaseMeta odbcMeta = new Vertica5DatabaseMeta();
  odbcMeta.setAccessType( DatabaseMeta.TYPE_ACCESS_ODBC );

  assertEquals( "com.vertica.jdbc.Driver", nativeMeta.getDriverClass() );
  assertEquals( "sun.jdbc.odbc.JdbcOdbcDriver", odbcMeta.getDriverClass() );
  assertFalse( nativeMeta.supportsTimeStampToDateConversion() );

  ResultSet resultSet = Mockito.mock( ResultSet.class );
  ResultSetMetaData metaData = Mockito.mock( ResultSetMetaData.class );
  Mockito.when( resultSet.getMetaData() ).thenReturn( metaData );

  Mockito.when( resultSet.getTimestamp( 1 ) ).thenReturn( new java.sql.Timestamp( 65535 ) );
  Mockito.when( resultSet.getTime( 2 ) ).thenReturn( new java.sql.Time( 1000 ) );
  Mockito.when( resultSet.getDate( 3 ) ).thenReturn( new java.sql.Date( ( 65535 * 2 ) ) );
  ValueMetaTimestamp ts = new ValueMetaTimestamp( "FOO" );
  ts.setOriginalColumnType( java.sql.Types.TIMESTAMP );
  ValueMetaDate tm = new ValueMetaDate( "BAR" );
  tm.setOriginalColumnType( java.sql.Types.TIME );
  ValueMetaDate dt = new ValueMetaDate( "WIBBLE" );
  dt.setOriginalColumnType( java.sql.Types.DATE );


  Object rtn = null;
  rtn = nativeMeta.getValueFromResultSet( resultSet, ts, 0 );
  assertNotNull( rtn );
  assertEquals( "java.sql.Timestamp", rtn.getClass().getName() );

  rtn = nativeMeta.getValueFromResultSet( resultSet, tm, 1 );
  assertNotNull( rtn );
  assertEquals( "java.sql.Time", rtn.getClass().getName() );

  rtn = nativeMeta.getValueFromResultSet( resultSet, dt, 2 );
  assertNotNull( rtn );
  assertEquals( "java.sql.Date", rtn.getClass().getName() );

  Mockito.when( resultSet.wasNull() ).thenReturn( true );
  rtn = nativeMeta.getValueFromResultSet( resultSet, new ValueMetaString( "WOBBLE" ), 3 );
  assertNull( rtn );

  // Verify that getDate, getTime, and getTimestamp were respectively called once
  Mockito.verify( resultSet, Mockito.times( 1 ) ).getDate( Mockito.anyInt() );
  Mockito.verify( resultSet, Mockito.times( 1 ) ).getTime( Mockito.anyInt() );
  Mockito.verify( resultSet, Mockito.times( 1 ) ).getTimestamp( Mockito.anyInt() );

}
 
开发者ID:pentaho,项目名称:pentaho-kettle,代码行数:50,代码来源:Vertica5DatabaseMetaTest.java


注:本文中的org.pentaho.di.core.row.value.ValueMetaDate.setOriginalColumnType方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。