1 21 22 package org.apache.derbyTesting.functionTests.tests.tools; 23 24 import java.io.IOException ; 25 import java.io.BufferedReader ; 26 import java.io.PipedReader ; 27 import java.io.PipedWriter ; 28 import java.io.PrintWriter ; 29 import java.sql.Connection ; 30 import java.sql.DatabaseMetaData ; 31 import java.sql.SQLException ; 32 import org.apache.derby.tools.sysinfo; 33 import org.apache.derbyTesting.junit.BaseJDBCTestCase; 34 35 38 39 public class sysinfo_api extends BaseJDBCTestCase { 40 41 DatabaseMetaData dm; 42 43 public sysinfo_api(String name) { 44 super(name); 45 } 46 47 50 public void testMajorVersion() { 51 int dmMajor = dm.getDriverMajorVersion(); 52 assertEquals(dmMajor, sysinfo.getMajorVersion()); 53 assertEquals(dmMajor, sysinfo.getMajorVersion(sysinfo.DBMS)); 54 assertEquals(dmMajor, sysinfo.getMajorVersion(sysinfo.TOOLS)); 55 assertEquals(dmMajor, sysinfo.getMajorVersion(sysinfo.NET)); 56 assertEquals(dmMajor, sysinfo.getMajorVersion(sysinfo.CLIENT)); 57 assertEquals(-1, sysinfo.getMajorVersion("foo")); 59 assertEquals(-1, sysinfo.getMajorVersion(null)); 60 } 61 62 65 public void testMinorVersion() { 66 int dmMinor = dm.getDriverMinorVersion(); 67 assertEquals(dmMinor, sysinfo.getMinorVersion()); 68 assertEquals(dmMinor, sysinfo.getMinorVersion(sysinfo.DBMS)); 69 assertEquals(dmMinor, sysinfo.getMinorVersion(sysinfo.TOOLS)); 70 assertEquals(dmMinor, sysinfo.getMinorVersion(sysinfo.NET)); 71 assertEquals(dmMinor, sysinfo.getMinorVersion(sysinfo.CLIENT)); 72 assertEquals(-1, sysinfo.getMinorVersion("foo")); 74 assertEquals(-1, sysinfo.getMinorVersion(null)); 75 } 76 77 80 public void testProductName() { 81 assertEquals("Apache Derby", sysinfo.getProductName()); 82 assertEquals("Apache Derby", sysinfo.getProductName(sysinfo.DBMS)); 83 assertEquals("Apache Derby", sysinfo.getProductName(sysinfo.TOOLS)); 84 assertEquals("Apache Derby", sysinfo.getProductName(sysinfo.NET)); 85 assertEquals("Apache Derby", sysinfo.getProductName(sysinfo.CLIENT)); 86 assertEquals("<no name found>", sysinfo.getProductName("foo")); 88 assertEquals("<no name found>", sysinfo.getProductName(null)); 89 } 90 91 94 public void testVersionString() throws SQLException { 95 String dmPv = dm.getDatabaseProductVersion(); 96 assertEquals(dmPv, sysinfo.getVersionString()); 97 assertEquals(dmPv, sysinfo.getVersionString(sysinfo.DBMS)); 98 assertEquals(dmPv, sysinfo.getVersionString(sysinfo.TOOLS)); 99 assertEquals(dmPv, sysinfo.getVersionString(sysinfo.NET)); 100 assertEquals(dmPv, sysinfo.getVersionString(sysinfo.CLIENT)); 101 assertEquals("<no name found>", sysinfo.getVersionString("foo")); 103 assertEquals("<no name found>", sysinfo.getVersionString(null)); 104 } 105 106 113 114 125 public void testGetInfo() throws IOException { 126 sysinfo_api_helper sah = new sysinfo_api_helper(); 127 sah.start(); 128 PipedReader pipeR = new PipedReader (sah.getPipedWriter()); 129 BufferedReader br = new BufferedReader (pipeR); 130 assertEquals("------------------ Java Information ------------------", 131 br.readLine()); 132 br.close(); 133 pipeR.close(); 134 } 135 136 140 public void setUp() throws SQLException { 141 dm = getConnection().getMetaData(); 142 } 143 144 145 } 146 147 class sysinfo_api_helper extends Thread { 148 149 private static PipedWriter pipeW = new PipedWriter (); 150 151 public void run() { 152 PrintWriter pw = new PrintWriter (pipeW, true); 153 sysinfo.getInfo(pw); 154 try { 155 pw.close(); 156 pipeW.close(); 157 } catch (IOException e) { 158 e.printStackTrace(); 159 } 160 } 161 162 public PipedWriter getPipedWriter() { 163 return pipeW; 164 } 165 } 166 | Popular Tags |