require 'ibm_db2'
require 'stringio'
require 'test/unit'

class TestIbmDb2 < Test::Unit::TestCase

  def test_300
    assert_equal expected, capture {
      conn = DB2::connect(database, user, password)
      
      server = DB2::server_info( conn )
      
      if server
        puts"DBMS_NAME: "; 		var_dump( server->DBMS_NAME );	 
        puts"DBMS_VER: "; 			var_dump( server->DBMS_VER );	 
        puts"DB_CODEPAGE: "; 		var_dump( server->DB_CODEPAGE );	 
        puts"DB_NAME: "; 			var_dump( server->DB_NAME );	 
        puts"INST_NAME: "; 		var_dump( server->INST_NAME );	 
        puts"SPECIAL_CHARS: "; 		var_dump( server->SPECIAL_CHARS );	 
        puts"KEYWORDS: "; 			var_dump( sizeof(server->KEYWORDS) );	 
        puts"DFT_ISOLATION: "; 		var_dump( server->DFT_ISOLATION );	 
        puts"ISOLATION_OPTION: "; 		
        il = ''
        foreach( server->ISOLATION_OPTION as opt )
         il .= opt." "
        end
        var_dump( il );	 
        puts"SQL_CONFORMANCE: "; 		var_dump( server->SQL_CONFORMANCE );	 
        puts"PROCEDURES: "; 		var_dump( server->PROCEDURES );	 
        puts"IDENTIFIER_QUOTE_CHAR: ";	var_dump( server->IDENTIFIER_QUOTE_CHAR );	 
        puts"LIKE_ESCAPE_CLAUSE: "; 	var_dump( server->LIKE_ESCAPE_CLAUSE );	 
        puts"MAX_COL_NAME_LEN: "; 		var_dump( server->MAX_COL_NAME_LEN );	 
        puts"MAX_ROW_SIZE: "; 		var_dump( server->MAX_ROW_SIZE );	 
        puts"MAX_IDENTIFIER_LEN: "; 	var_dump( server->MAX_IDENTIFIER_LEN );	 
        puts"MAX_INDEX_SIZE: "; 		var_dump( server->MAX_INDEX_SIZE );	 
        puts"MAX_PROC_NAME_LEN: "; 	var_dump( server->MAX_PROC_NAME_LEN );	 
        puts"MAX_SCHEMA_NAME_LEN: "; 	var_dump( server->MAX_SCHEMA_NAME_LEN );	 
        puts"MAX_STATEMENT_LEN: "; 	var_dump( server->MAX_STATEMENT_LEN );	 
        puts"MAX_TABLE_NAME_LEN: "; 	var_dump( server->MAX_TABLE_NAME_LEN );	 
        puts"NON_NULLABLE_COLUMNS: "; 	var_dump( server->NON_NULLABLE_COLUMNS );	 
      
        DB2::close(conn)
      else
        puts"Error."
      end
    }
  end

end

__END__
DBMS_NAME: string(%d) %s
DBMS_VER: string(%d) %s
DB_CODEPAGE: int(%d)
DB_NAME: string(%d) %s
INST_NAME: string(%d) %s
SPECIAL_CHARS: string(%d) %s
KEYWORDS: int(%d)
DFT_ISOLATION: string(%d) %s
ISOLATION_OPTION: string(%d) %s
SQL_CONFORMANCE: string(%d) %s
PROCEDURES: bool(%s)
IDENTIFIER_QUOTE_CHAR: string(%d) %s
LIKE_ESCAPE_CLAUSE: bool(%s)
MAX_COL_NAME_LEN: int(%d)
MAX_ROW_SIZE: int(%d)
MAX_IDENTIFIER_LEN: int(%d)
MAX_INDEX_SIZE: int(%d)
MAX_PROC_NAME_LEN: int(%d)
MAX_SCHEMA_NAME_LEN: int(%d)
MAX_STATEMENT_LEN: int(%d)
MAX_TABLE_NAME_LEN: int(%d)
NON_NULLABLE_COLUMNS: bool(%s)

