You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucy.apache.org by ma...@apache.org on 2015/09/28 21:52:29 UTC
[13/14] lucy git commit: Test Go bindings for MatchDoc.
Test Go bindings for MatchDoc.
Project: http://git-wip-us.apache.org/repos/asf/lucy/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucy/commit/2aa24c19
Tree: http://git-wip-us.apache.org/repos/asf/lucy/tree/2aa24c19
Diff: http://git-wip-us.apache.org/repos/asf/lucy/diff/2aa24c19
Branch: refs/heads/master
Commit: 2aa24c199b204a254705caf94bf8013011f98699
Parents: faab39e
Author: Marvin Humphrey <ma...@rectangular.com>
Authored: Tue Sep 15 16:50:57 2015 -0700
Committer: Marvin Humphrey <ma...@rectangular.com>
Committed: Tue Sep 15 16:50:57 2015 -0700
----------------------------------------------------------------------
go/lucy/search_test.go | 31 +++++++++++++++++++++++++++++++
1 file changed, 31 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/lucy/blob/2aa24c19/go/lucy/search_test.go
----------------------------------------------------------------------
diff --git a/go/lucy/search_test.go b/go/lucy/search_test.go
index 00d68c1..b281477 100644
--- a/go/lucy/search_test.go
+++ b/go/lucy/search_test.go
@@ -622,3 +622,34 @@ func TestIndexSearcherTopDocs(t *testing.T) {
t.Errorf("TopDocs expected 2, got %d", docID)
}
}
+
+func TestMatchDocBasics(t *testing.T) {
+ matchDoc := NewMatchDoc(0, 1.0, nil)
+ matchDoc.SetDocID(42)
+ if got := matchDoc.GetDocID(); got != 42 {
+ t.Errorf("Set/GetDocID: %d", got)
+ }
+ matchDoc.SetScore(1.5)
+ if got := matchDoc.GetScore(); got != 1.5 {
+ t.Errorf("Set/GetScore: %f", got)
+ }
+ values := []interface{}{"foo", int64(42)}
+ matchDoc.SetValues(values)
+ if got := matchDoc.GetValues(); !reflect.DeepEqual(got, values) {
+ t.Error("Get/SetValues")
+ }
+}
+
+func TestMatchDocSerialization(t *testing.T) {
+ values := []interface{}{"foo", int64(42)}
+ matchDoc := NewMatchDoc(100, 1.5, values)
+ folder := NewRAMFolder("")
+ outstream := folder.OpenOut("foo")
+ matchDoc.Serialize(outstream)
+ outstream.Close()
+ inStream := folder.OpenIn("foo")
+ dupe := clownfish.GetClass(matchDoc).MakeObj().(MatchDoc).Deserialize(inStream)
+ if got := dupe.GetValues(); !reflect.DeepEqual(got, values) {
+ t.Errorf("Failed round-trip serializetion of MatchDoc")
+ }
+}