cmd/guru: always import tests in initial referrers import

If test files are not included here,
then results in those files will be missing
for queries within a single package.

This work supported by Sourcegraph.

Change-Id: I8136ea250ba980179228d9b408d9e7409c49a873
Reviewed-on: https://go-review.googlesource.com/97799
Run-TryBot: Josh Bleecher Snyder <josharian@gmail.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Alan Donovan <adonovan@google.com>
diff --git a/cmd/guru/referrers.go b/cmd/guru/referrers.go
index d6b9df9..1a4b3bd 100644
--- a/cmd/guru/referrers.go
+++ b/cmd/guru/referrers.go
@@ -34,6 +34,12 @@
 		return err
 	}
 
+	// Load tests of the query package
+	// even if the query location is not in the tests.
+	for path := range lconf.ImportPkgs {
+		lconf.ImportPkgs[path] = true
+	}
+
 	// Load/parse/type-check the query package.
 	lprog, err := lconf.Load()
 	if err != nil {
diff --git a/cmd/guru/testdata/src/referrers/int_test.go b/cmd/guru/testdata/src/referrers/int_test.go
index 9102cd6..397842b 100644
--- a/cmd/guru/testdata/src/referrers/int_test.go
+++ b/cmd/guru/testdata/src/referrers/int_test.go
@@ -5,4 +5,6 @@
 func _() {
 	// This reference should be found by the ref-method query.
 	_ = (lib.Type).Method // ref from internal test package
+
+	_ = notexported
 }
diff --git a/cmd/guru/testdata/src/referrers/main.go b/cmd/guru/testdata/src/referrers/main.go
index 1fc80ea..acaae1f 100644
--- a/cmd/guru/testdata/src/referrers/main.go
+++ b/cmd/guru/testdata/src/referrers/main.go
@@ -25,6 +25,8 @@
 	s2.f = 1
 }
 
+var notexported int // @referrers unexported-from-test "notexported"
+
 // Test //line directives:
 
 type U int // @referrers ref-type-U "U"
diff --git a/cmd/guru/testdata/src/referrers/main.golden b/cmd/guru/testdata/src/referrers/main.golden
index dc97f6a..bf56d76 100644
--- a/cmd/guru/testdata/src/referrers/main.golden
+++ b/cmd/guru/testdata/src/referrers/main.golden
@@ -54,6 +54,10 @@
 	_ = s{}.f // @referrers ref-field "f"
 	s2.f = 1
 
+-------- @referrers unexported-from-test --------
+references to var notexported int
+	_ = notexported
+
 -------- @referrers ref-type-U --------
 references to type U int
 open nosuchfile.y: no such file or directory (+ 1 more refs in this file)