Mercurial > hg > audiodb
comparison bindings/java/test/TestQuery.java @ 729:a9978a6d0bb3
* Initial code to handle querying by datum
* Created Datum class (without key var)
* Added toString to Result for quick debug
* Needs plenty of testing!
author | mas01mj |
---|---|
date | Tue, 03 Aug 2010 17:08:54 +0000 |
parents | d3407d1e2f57 |
children |
comparison
equal
deleted
inserted
replaced
728:d3407d1e2f57 | 729:a9978a6d0bb3 |
---|---|
33 query.setSeqLength(1); | 33 query.setSeqLength(1); |
34 query.setSeqStart(0); | 34 query.setSeqStart(0); |
35 query.setIncludeKeys(new String[]{"feat1"}); | 35 query.setIncludeKeys(new String[]{"feat1"}); |
36 query.setExcludeKeys(new String[]{"feat2"}); | 36 query.setExcludeKeys(new String[]{"feat2"}); |
37 Vector<Result> results = testDB.query("feat1", query); | 37 Vector<Result> results = testDB.query("feat1", query); |
38 /* System.out.println(results.size()); | 38 } |
39 for(Result result: results) | 39 |
40 public void testDataQuery() | |
41 { | |
42 // Insert the same feature twice | |
43 AudioDB testDB = new AudioDB(testDBFile); | |
44 assertTrue("DB created", testDB.create(1, 2, 1)); | |
45 testDB.open(AudioDB.Mode.O_RDWR); | |
46 assertTrue("Insert feature file", testDB.insert("feat1", testFeatureFile)); | |
47 assertTrue("Insert feature file again", testDB.insert("feat2", testFeatureFile)); | |
48 testDB.close(); | |
49 | |
50 testDB.open(AudioDB.Mode.O_RDONLY); | |
51 Status status = testDB.getStatus(); | |
52 assertEquals("Two features", 2, status.getNumFiles()); | |
53 | |
54 Query query = new Query(); | |
55 query.setSeqLength(1); | |
56 query.setSeqStart(0); | |
57 query.setIncludeKeys(new String[]{"feat1"}); | |
58 query.setExcludeKeys(new String[]{"feat2"}); | |
59 | |
60 Datum datum = new Datum(); | |
61 datum.setData(new double[]{0.0, 2.2, 1.1}); | |
62 datum.setNvectors(3); | |
63 datum.setDim(1); | |
64 query.setDatum(datum); | |
65 | |
66 Vector<Result> results = testDB.query(query); | |
67 if(results != null) | |
40 { | 68 { |
41 System.out.println(result.getKey()); | 69 System.out.println("Here with "+results); |
42 System.out.println(result.getDistance()); | 70 } |
43 System.out.println(result.getQpos()); | |
44 System.out.println(result.getIpos()); | |
45 }*/ | |
46 } | 71 } |
72 | |
47 /* | 73 /* |
48 public void testAdvanced() | 74 public void testAdvanced() |
49 { | 75 { |
50 AudioDB testDB = new AudioDB(new File("testfiles/9.adb")); | 76 AudioDB testDB = new AudioDB(new File("testfiles/9.adb")); |
51 testDB.open(AudioDB.Mode.O_RDONLY); | 77 testDB.open(AudioDB.Mode.O_RDONLY); |
52 Status status = testDB.getStatus(); | 78 Status status = testDB.getStatus(); |
53 System.out.println(status.getNumFiles()); | 79 System.out.println(status.getNumFiles()); |
54 Query query = new Query(); | 80 Query query = new Query(); |
55 query.setSeqLength(16); | 81 query.setSeqLength(1); |
56 query.setSeqStart(0); | 82 query.setSeqStart(0); |
57 query.setExcludeKeys(new String[]{"KSA_CHARM_27", "KSA_CHARM_300"}); | 83 query.setExcludeKeys(new String[]{"KSA_CHARM_27", "KSA_CHARM_300"}); |
58 Vector<Result> results = testDB.query("KSA_CHARM_336", query); | 84 |
85 Datum datum = new Datum(); | |
86 datum.setData(new double[]{0.0, 2.2, 1.1, 4, 2, 6, 3, 8, 2, 4, 5, 8}); | |
87 datum.setDim(12); | |
88 datum.setNvectors(1); | |
89 query.setDatum(datum); | |
90 | |
91 Vector<Result> results = testDB.query(query); | |
92 | |
59 System.out.println(results.size()); | 93 System.out.println(results.size()); |
60 for(Result result: results) | 94 for(Result result: results) |
61 { | 95 { |
62 System.out.print(result.getKey()); | 96 System.out.print(result.getKey()); |
63 System.out.print(" "+result.getDistance()); | 97 System.out.print(" "+result.getDistance()); |
64 System.out.print(" "+result.getQpos()); | 98 System.out.print(" "+result.getQpos()); |
65 System.out.println(" "+result.getIpos()); | 99 System.out.println(" "+result.getIpos()); |
66 } | 100 } |
67 | 101 |
68 }*/ | 102 } |
69 | 103 */ |
70 } | 104 } |