diff --git a/internal/lsp/lsp_test.go b/internal/lsp/lsp_test.go
index 9fcf9fd..f51dcb0 100644
--- a/internal/lsp/lsp_test.go
+++ b/internal/lsp/lsp_test.go
@@ -9,6 +9,7 @@
 	"context"
 	"fmt"
 	"go/token"
+	"io/ioutil"
 	"os"
 	"os/exec"
 	"sort"
@@ -340,10 +341,15 @@
 			Position:     loc.Range.Start,
 		}
 		var locs []protocol.Location
+		var hover *protocol.Hover
 		if d.IsType {
 			locs, err = r.server.TypeDefinition(context.Background(), params)
 		} else {
 			locs, err = r.server.Definition(context.Background(), params)
+			if err != nil {
+				t.Fatalf("failed for %v: %v", d.Src, err)
+			}
+			hover, err = r.server.Hover(context.Background(), params)
 		}
 		if err != nil {
 			t.Fatalf("failed for %v: %v", d.Src, err)
@@ -358,6 +364,19 @@
 		} else if def != d.Def {
 			t.Errorf("for %v got %v want %v", d.Src, def, d.Def)
 		}
+		if hover != nil {
+			tag := fmt.Sprintf("hover-%d-%d", d.Def.Start().Line(), d.Def.Start().Column())
+			filename, err := d.Def.URI().Filename()
+			if err != nil {
+				t.Fatalf("failed for %v: %v", d.Def, err)
+			}
+			expectHover := string(r.data.Golden(tag, filename, func(golden string) error {
+				return ioutil.WriteFile(golden, []byte(hover.Contents.Value), 0666)
+			}))
+			if hover.Contents.Value != expectHover {
+				t.Errorf("for %v got %q want %q", d.Src, hover.Contents.Value, expectHover)
+			}
+		}
 	}
 }
 
diff --git a/internal/lsp/testdata/godef/a/a.hover-14-6.golden.go b/internal/lsp/testdata/godef/a/a.hover-14-6.golden.go
new file mode 100644
index 0000000..b2551e2
--- /dev/null
+++ b/internal/lsp/testdata/godef/a/a.hover-14-6.golden.go
@@ -0,0 +1 @@
+var err error
\ No newline at end of file
diff --git a/internal/lsp/testdata/godef/a/a.hover-7-6.golden.go b/internal/lsp/testdata/godef/a/a.hover-7-6.golden.go
new file mode 100644
index 0000000..41c681e
--- /dev/null
+++ b/internal/lsp/testdata/godef/a/a.hover-7-6.golden.go
@@ -0,0 +1 @@
+type a.A string
\ No newline at end of file
diff --git a/internal/lsp/testdata/godef/a/a.hover-9-6.golden.go b/internal/lsp/testdata/godef/a/a.hover-9-6.golden.go
new file mode 100644
index 0000000..16285ac
--- /dev/null
+++ b/internal/lsp/testdata/godef/a/a.hover-9-6.golden.go
@@ -0,0 +1 @@
+func a.Stuff()
\ No newline at end of file
diff --git a/internal/lsp/testdata/godef/a/random.hover-13-2.golden.go b/internal/lsp/testdata/godef/a/random.hover-13-2.golden.go
new file mode 100644
index 0000000..08a5f3c
--- /dev/null
+++ b/internal/lsp/testdata/godef/a/random.hover-13-2.golden.go
@@ -0,0 +1 @@
+field x int
\ No newline at end of file
diff --git a/internal/lsp/testdata/godef/a/random.hover-16-15.golden.go b/internal/lsp/testdata/godef/a/random.hover-16-15.golden.go
new file mode 100644
index 0000000..861a9a9
--- /dev/null
+++ b/internal/lsp/testdata/godef/a/random.hover-16-15.golden.go
@@ -0,0 +1 @@
+func (*Pos).Sum() int
\ No newline at end of file
diff --git a/internal/lsp/testdata/godef/a/random.hover-3-6.golden.go b/internal/lsp/testdata/godef/a/random.hover-3-6.golden.go
new file mode 100644
index 0000000..8daadc7
--- /dev/null
+++ b/internal/lsp/testdata/godef/a/random.hover-3-6.golden.go
@@ -0,0 +1 @@
+func Random() int
\ No newline at end of file
diff --git a/internal/lsp/testdata/godef/a/random.hover-8-14.golden.go b/internal/lsp/testdata/godef/a/random.hover-8-14.golden.go
new file mode 100644
index 0000000..a1dcda2
--- /dev/null
+++ b/internal/lsp/testdata/godef/a/random.hover-8-14.golden.go
@@ -0,0 +1 @@
+var y int
\ No newline at end of file
diff --git a/internal/lsp/testdata/godef/a/random.hover-8-6.golden.go b/internal/lsp/testdata/godef/a/random.hover-8-6.golden.go
new file mode 100644
index 0000000..f97ad9d
--- /dev/null
+++ b/internal/lsp/testdata/godef/a/random.hover-8-6.golden.go
@@ -0,0 +1 @@
+func Random2(y int) int
\ No newline at end of file
diff --git a/internal/lsp/testdata/godef/b/b.hover-11-6.golden.go b/internal/lsp/testdata/godef/b/b.hover-11-6.golden.go
new file mode 100644
index 0000000..63622cd
--- /dev/null
+++ b/internal/lsp/testdata/godef/b/b.hover-11-6.golden.go
@@ -0,0 +1 @@
+type S2 struct{F1 string; F2 int; *a.A}
\ No newline at end of file
diff --git a/internal/lsp/testdata/godef/b/b.hover-12-2.golden.go b/internal/lsp/testdata/godef/b/b.hover-12-2.golden.go
new file mode 100644
index 0000000..718de00
--- /dev/null
+++ b/internal/lsp/testdata/godef/b/b.hover-12-2.golden.go
@@ -0,0 +1 @@
+field F1 string
\ No newline at end of file
diff --git a/internal/lsp/testdata/godef/b/b.hover-13-2.golden.go b/internal/lsp/testdata/godef/b/b.hover-13-2.golden.go
new file mode 100644
index 0000000..e66621c
--- /dev/null
+++ b/internal/lsp/testdata/godef/b/b.hover-13-2.golden.go
@@ -0,0 +1 @@
+field F2 int
\ No newline at end of file
diff --git a/internal/lsp/testdata/godef/b/b.hover-5-6.golden.go b/internal/lsp/testdata/godef/b/b.hover-5-6.golden.go
new file mode 100644
index 0000000..12dd895
--- /dev/null
+++ b/internal/lsp/testdata/godef/b/b.hover-5-6.golden.go
@@ -0,0 +1 @@
+type S1 struct{F1 int; S2; a.A}
\ No newline at end of file
diff --git a/internal/lsp/testdata/godef/b/b.hover-6-2.golden.go b/internal/lsp/testdata/godef/b/b.hover-6-2.golden.go
new file mode 100644
index 0000000..709c455
--- /dev/null
+++ b/internal/lsp/testdata/godef/b/b.hover-6-2.golden.go
@@ -0,0 +1 @@
+field F1 int
\ No newline at end of file
diff --git a/internal/lsp/testdata/godef/b/b.hover-7-2.golden.go b/internal/lsp/testdata/godef/b/b.hover-7-2.golden.go
new file mode 100644
index 0000000..fa14bfa
--- /dev/null
+++ b/internal/lsp/testdata/godef/b/b.hover-7-2.golden.go
@@ -0,0 +1 @@
+field S2 S2
\ No newline at end of file
diff --git a/internal/lsp/testdata/godef/broken/unclosedIf.hover-7-7.golden.go b/internal/lsp/testdata/godef/broken/unclosedIf.hover-7-7.golden.go
new file mode 100644
index 0000000..857d09d
--- /dev/null
+++ b/internal/lsp/testdata/godef/broken/unclosedIf.hover-7-7.golden.go
@@ -0,0 +1 @@
+var myUnclosedIf string
\ No newline at end of file
