diff --git a/godoc/index_test.go b/godoc/index_test.go
index 001d2a7..8a5a473 100644
--- a/godoc/index_test.go
+++ b/godoc/index_test.go
@@ -17,6 +17,8 @@
 		"src/pkg/foo/foo.go": `// Package foo is an example.
 package foo
 
+import "bar"
+
 // Foo is stuff.
 type Foo struct{}
 
@@ -27,6 +29,10 @@
 		"src/pkg/bar/bar.go": `// Package bar is another example to test races.
 package bar
 `,
+		"src/pkg/other/bar/bar.go": `// Package bar is another bar package.
+package bar
+func X() {}
+`,
 		"src/pkg/skip/skip.go": `// Package skip should be skipped.
 package skip
 func Skip() {}
@@ -46,11 +52,43 @@
 		t.Fatal("no index")
 	}
 	t.Logf("Got: %#v", ix)
-	wantStats := Statistics{Bytes: 179, Files: 2, Lines: 11, Words: 5, Spots: 7}
+
+	wantStats := Statistics{Bytes: 256, Files: 3, Lines: 16, Words: 6, Spots: 9}
 	if !reflect.DeepEqual(ix.Stats(), wantStats) {
 		t.Errorf("Stats = %#v; want %#v", ix.Stats(), wantStats)
 	}
+
 	if _, ok := ix.words["Skip"]; ok {
 		t.Errorf("the word Skip was found; expected it to be skipped")
 	}
+
+	if got, want := ix.ImportCount(), map[string]int{
+		"bar": 1,
+	}; !reflect.DeepEqual(got, want) {
+		t.Errorf("ImportCount = %v; want %v", got, want)
+	}
+
+	if got, want := ix.PackagePath(), map[string]map[string]bool{
+		"foo": map[string]bool{
+			"foo": true,
+		},
+		"bar": map[string]bool{
+			"bar":       true,
+			"other/bar": true,
+		},
+	}; !reflect.DeepEqual(got, want) {
+		t.Errorf("PackagePath = %v; want %v", got, want)
+	}
+
+	if got, want := ix.Exports(), map[string]map[string]SpotKind{
+		"foo": map[string]SpotKind{
+			"Foo": TypeDecl,
+			"New": FuncDecl,
+		},
+		"other/bar": map[string]SpotKind{
+			"X": FuncDecl,
+		},
+	}; !reflect.DeepEqual(got, want) {
+		t.Errorf("Exports = %v; want %v", got, want)
+	}
 }
