X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=src%2Ftest%2Forg%2Fyaz4j%2FConnectionTest.java;h=056039bab37616c1a75734b33245753c1dd06eac;hb=4b19fb34aad71a81fdcd5e1bb6ff00a06386e5d9;hp=f7ea9ee197ce0e15927f93c74adb03809dd0ebec;hpb=c30dbf5d3f296cee5ce182b9eff27c6a471770d5;p=yaz4j-moved-to-github.git diff --git a/src/test/org/yaz4j/ConnectionTest.java b/src/test/org/yaz4j/ConnectionTest.java index f7ea9ee..056039b 100644 --- a/src/test/org/yaz4j/ConnectionTest.java +++ b/src/test/org/yaz4j/ConnectionTest.java @@ -3,82 +3,121 @@ package org.yaz4j; import org.junit.*; import static org.junit.Assert.*; import org.yaz4j.exception.*; +import java.util.List; public class ConnectionTest { - @Test - public void testConnection() { - Connection con = new Connection("z3950.indexdata.dk:210/gils", 0); - assertNotNull(con); - try { - con.setSyntax("sutrs"); - System.out.println("Open connection to z3950.indexdata.dk:210/gils..."); - con.connect(); - ResultSet s = con.search("@attr 1=4 utah", Connection.QueryType.PrefixQuery); - System.out.println("Search for 'utah'..."); - assertNotNull(s); - assertEquals(s.getSize(), 9); - Record rec = s.getRecord(0); - assertNotNull(rec); - byte[] content = rec.getContent(); - // first SUTRS record - assertEquals(content.length, 1940); - assertEquals(content[0], 103); - assertEquals(rec.getSyntax(), "SUTRS"); - assertEquals(rec.getDatabase(), "gils"); - } catch (ZoomException ze) { - fail(ze.getMessage()); - } finally { - con.close(); - } + @Test + public void testConnection() { + Connection con = new Connection("z3950.indexdata.dk:210/gils", 0); + assertNotNull(con); + try { + con.setSyntax("sutrs"); + System.out.println("Open connection to z3950.indexdata.dk:210/gils..."); + con.connect(); + ResultSet s = con.search("@attr 1=4 utah", + Connection.QueryType.PrefixQuery); + System.out.println("Search for 'utah'..."); + assertNotNull(s); + assertEquals(s.getHitCount(), 9); + Record rec = s.getRecord(0); + assertNotNull(rec); + byte[] content = rec.getContent(); + // first SUTRS record + assertEquals(content.length, 1940); + assertEquals(content[0], 103); + assertEquals(rec.getSyntax(), "SUTRS"); + assertEquals(rec.getDatabase(), "gils"); + System.out.println("Read all records.."); + // read all records + int i = 0; + for (Record r : s) { + assertNotNull(r); + System.out.println("Got "+i+" record of type "+r.getSyntax()); + i++; + } + System.out.println("Try sorting them..."); + s.sort("yaz", "1=4 >i 1=21 >s"); + System.out.println("Try fetching them all at once..."); + i = 0; + List all = s.getRecords(0, (int) s.getHitCount()); + for (Record r : all) { + System.out.println("getRecords, rec '"+i+"'"+r.getSyntax()); + i++; + } + } catch (ZoomException ze) { + fail(ze.getMessage()); + } finally { + con.close(); } + } + - @Test - public void unsupportedSyntax() { - System.out.println("Open connection to z3950.loc.gov:7090/voyager..."); - Connection con = new Connection("z3950.loc.gov:7090/voyager", 0); - try { - System.out.println("Set syntax to 'rusmarc'"); - con.setSyntax("rusmarc"); - con.connect(); - System.out.println("Search for something that exists..."); - ResultSet set = con.search("@attr 1=7 0253333490", Connection.QueryType.PrefixQuery); - System.out.println("Result set size: " + set.getSize()); - System.out.println("Get the first record..."); - Record rec = set.getRecord(0); - if (rec == null) { - System.out.println("Record is null"); - } else { - System.out.print(rec.render()); - } - } catch (ZoomException ze) { - //fail(ze.getMessage()); - } finally { - con.close(); + @Test + public void unsupportedSyntax() { + System.out.println("Open connection to z3950.loc.gov:7090/voyager..."); + Connection con = new Connection("z3950.loc.gov:7090/voyager", 0); + try { + System.out.println("Set syntax to 'rusmarc'"); + con.setSyntax("rusmarc"); + con.connect(); + System.out.println("Search for something that exists..."); + ResultSet set = con.search("@attr 1=7 0253333490", + Connection.QueryType.PrefixQuery); + System.out.println("Result set size: " + set.getHitCount()); + System.out.println("Get the first record..."); + Record rec = set.getRecord(0); + if (rec == null) { + System.out.println("Record is null"); + } else { + System.out.print(rec.render()); } + } catch (ZoomException ze) { + //fail(ze.getMessage()); + } finally { + con.close(); } + } + + @Test + /** + * This only works with local ztest + */ + public void recordError() { + Connection con = new Connection("localhost:9999", 0); + assertNotNull(con); + try { + con.setSyntax("postscript"); + System.out.println("Open connection to localhost:9999..."); + con.connect(); + ResultSet s = con.search("100", Connection.QueryType.PrefixQuery); + assertNotNull(s); + assertEquals(s.getHitCount(), 100); + Record rec = s.getRecord(0); + fail("We should never get here and get ZoomeException instead"); + } catch (ZoomException ze) { + // we need more specific exceptions here + System.out.println(ze.getMessage()); + } finally { + con.close(); + } + } + + @Test + public void testScan() { + System.out.println("Open connection to z3950cat.bl.uk:9909/BLAC"); + Connection con = new Connection("z3950cat.bl.uk:9909/BLAC", 0); + try { + con.connect(); + con.option("number", "20"); + ScanSet set = con.scan("@attr 1=21 \"development\""); + System.out.println("getSize(): " + set.getSize()); + assertEquals(20, set.getSize()); - @Test - /** - * This only works with local ztest - */ - public void recordError() { - Connection con = new Connection("localhost:9999", 0); - assertNotNull(con); - try { - con.setSyntax("postscript"); - System.out.println("Open connection to localhost:9999..."); - con.connect(); - ResultSet s = con.search("100", Connection.QueryType.PrefixQuery); - assertNotNull(s); - assertEquals(s.getSize(), 100); - Record rec = s.getRecord(0); - fail("We should never get here and get ZoomeException instead"); - } catch (ZoomException ze) { - // we need more specific exceptions here - System.out.println(ze.getMessage()); - } finally { - con.close(); - } + } catch (ZoomException ex) { + fail(ex.getMessage()); + } finally { + con.close(); } + } }