4 import static org.junit.Assert.*;
5 import org.yaz4j.exception.*;
7 public class ConnectionTest {
10 public void testConnection() {
11 Connection con = new Connection("z3950.indexdata.dk:210/gils", 0);
14 con.setSyntax("sutrs");
15 System.out.println("Open connection to z3950.indexdata.dk:210/gils...");
17 ResultSet s = con.search("@attr 1=4 utah",
18 Connection.QueryType.PrefixQuery);
19 System.out.println("Search for 'utah'...");
21 assertEquals(s.getHitCount(), 9);
22 Record rec = s.getRecord(0);
24 byte[] content = rec.getContent();
26 assertEquals(content.length, 1940);
27 assertEquals(content[0], 103);
28 assertEquals(rec.getSyntax(), "SUTRS");
29 assertEquals(rec.getDatabase(), "gils");
30 System.out.println("Read all records..");
35 System.out.println("Got "+i+" record of type "+r.getSyntax());
38 } catch (ZoomException ze) {
39 fail(ze.getMessage());
47 public void unsupportedSyntax() {
48 System.out.println("Open connection to z3950.loc.gov:7090/voyager...");
49 Connection con = new Connection("z3950.loc.gov:7090/voyager", 0);
51 System.out.println("Set syntax to 'rusmarc'");
52 con.setSyntax("rusmarc");
54 System.out.println("Search for something that exists...");
55 ResultSet set = con.search("@attr 1=7 0253333490",
56 Connection.QueryType.PrefixQuery);
57 System.out.println("Result set size: " + set.getHitCount());
58 System.out.println("Get the first record...");
59 Record rec = set.getRecord(0);
61 System.out.println("Record is null");
63 System.out.print(rec.render());
65 } catch (ZoomException ze) {
66 //fail(ze.getMessage());
74 * This only works with local ztest
76 public void recordError() {
77 Connection con = new Connection("localhost:9999", 0);
80 con.setSyntax("postscript");
81 System.out.println("Open connection to localhost:9999...");
83 ResultSet s = con.search("100", Connection.QueryType.PrefixQuery);
85 assertEquals(s.getHitCount(), 100);
86 Record rec = s.getRecord(0);
87 fail("We should never get here and get ZoomeException instead");
88 } catch (ZoomException ze) {
89 // we need more specific exceptions here
90 System.out.println(ze.getMessage());
97 public void testScan() {
98 System.out.println("Open connection to z3950cat.bl.uk:9909/BLAC");
99 Connection con = new Connection("z3950cat.bl.uk:9909/BLAC", 0);
102 con.option("number", "20");
103 ScanSet set = con.scan("@attr 1=21 \"development\"");
104 System.out.println("getSize(): " + set.getSize());
105 assertEquals(20, set.getSize());
107 } catch (ZoomException ex) {
108 fail(ex.getMessage());