### Question:
JcrResultSetMetaData implements ResultSetMetaData { @Override public boolean isCaseSensitive( int column ) { JcrType typeInfo = JcrType.typeInfo(getColumnTypeName(column)); return typeInfo.isCaseSensitive(); } protected  JcrResultSetMetaData( JcrConnection connection,
                                    QueryResult results ); @Override String getCatalogName( int column ); @Override String getColumnClassName( int column ); @Override int getColumnCount(); @Override int getColumnDisplaySize( int column ); @Override String getColumnLabel( int column ); @Override String getColumnName( int column ); @Override int getColumnType( int column ); @Override String getColumnTypeName( int column ); @Override int getPrecision( int column ); @Override int getScale( int column ); @Override String getSchemaName( int column ); @Override String getTableName( int column ); @Override boolean isAutoIncrement( int column ); @Override boolean isCaseSensitive( int column ); @Override boolean isCurrency( int column ); @Override boolean isDefinitelyWritable( int column ); @Override int isNullable( int column ); @Override boolean isReadOnly( int column ); @Override boolean isSearchable( int column ); @Override boolean isSigned( int column ); @Override boolean isWritable( int column ); @Override boolean isWrapperFor( Class<?> iface ); @Override T unwrap( Class<T> iface );  }### Answer:
@Test public void shouldReturnCaseSensitiveWhenResultIsNotExtendedJcrQueryResult() { for (int i = 0; i != columnNames.length; ++i) { assertThat(metadata.isCaseSensitive(i + 1), is(true)); } }
@Test public void shouldReturnCaseSensitiveBasedUponNodeTypeWhenResultIsExtendedJcrQueryResult() { assertThat(extMetadata.isCaseSensitive(1), is(true)); assertThat(extMetadata.isCaseSensitive(2), is(false)); assertThat(extMetadata.isCaseSensitive(3), is(true)); assertThat(extMetadata.isCaseSensitive(4), is(false)); assertThat(extMetadata.isCaseSensitive(5), is(false)); }
@Test public void shouldReturnFalseFromSignedWhenResultIsNotExtendedJcrQueryResult() { assertThat(metadata.isCaseSensitive(1), is(true)); assertThat(metadata.isCaseSensitive(2), is(true)); assertThat(metadata.isCaseSensitive(3), is(true)); assertThat(metadata.isCaseSensitive(4), is(true)); assertThat(metadata.isCaseSensitive(5), is(true)); }