Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 6 additions & 2 deletions internal/index/scip_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,8 @@ import (
"google.golang.org/protobuf/proto"
)

const testModulePrefix = "github.com/sourcegraph/scip-go/internal/testdata/"

// Use "update-snapshots" to update snapshots
var filter = flag.String("filter", "", "filenames to filter by")

Expand Down Expand Up @@ -47,7 +49,7 @@ func TestSnapshots(t *testing.T) {
err := index.Index(writer, config.IndexOpts{
ModuleRoot: inputDirectory,
ModuleVersion: "0.1.test",
ModulePath: "sg/" + filepath.Base(inputDirectory),
ModulePath: testModulePrefix + filepath.Base(inputDirectory),
GoStdlibVersion: "go1.22",
})
if err != nil {
Expand All @@ -58,7 +60,9 @@ func TestSnapshots(t *testing.T) {
OnError: func(err error) error { return err },
IncludeScheme: func(scheme string) bool { return scheme == "local" },
IncludePackageManager: func(_ string) bool { return false },
IncludePackageName: func(name string) bool { return !strings.HasPrefix(name, "sg/") },
IncludePackageName: func(name string) bool {
return !strings.HasPrefix(name, testModulePrefix)
},
IncludePackageVersion: func(_ string) bool { return true },
IncludeDescriptor: func(_ string) bool { return true },
IncludeRawDescriptor: func(descriptor *scip.Descriptor) bool { return true },
Expand Down
3 changes: 0 additions & 3 deletions internal/loader/loader.go
Original file line number Diff line number Diff line change
Expand Up @@ -289,9 +289,6 @@ func normalizePackage(opts *config.IndexOpts, pkg *packages.Package) *packages.P
// sameRepoRoot returns true if a and b resolve to the same VCS repository root.
// This is used to detect sibling modules in a monorepo.
func sameRepoRoot(pathA, pathB string) bool {
if pathA == pathB {
return true
}
rootA, errA := vcs.RepoRootForImportPath(pathA, false)
rootB, errB := vcs.RepoRootForImportPath(pathB, false)
if errA != nil || errB != nil {
Expand Down
2 changes: 1 addition & 1 deletion internal/testdata/snapshots/input/embedded/go.mod
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
module sg/embedded
module github.com/sourcegraph/scip-go/internal/testdata/embedded

go 1.19
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ package nested_internal

import (
"fmt"
"sg/embedded"
"github.com/sourcegraph/scip-go/internal/testdata/embedded"
)

func Something(recent embedded.RecentCommittersResults) {
Expand Down
2 changes: 1 addition & 1 deletion internal/testdata/snapshots/input/generallyeric/go.mod
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
module sg/generallyeric
module github.com/sourcegraph/scip-go/internal/testdata/generallyeric

go 1.19

Expand Down
2 changes: 1 addition & 1 deletion internal/testdata/snapshots/input/impls/go.mod
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
module sg/impls
module github.com/sourcegraph/scip-go/internal/testdata/impls

go 1.19
2 changes: 1 addition & 1 deletion internal/testdata/snapshots/input/initial/go.mod
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
module sg/initial
module github.com/sourcegraph/scip-go/internal/testdata/initial

go 1.23
2 changes: 1 addition & 1 deletion internal/testdata/snapshots/input/inlinestruct/go.mod
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
module sg/inlinestruct
module github.com/sourcegraph/scip-go/internal/testdata/inlinestruct

go 1.19
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
module sg/replace-directives
module github.com/sourcegraph/scip-go/internal/testdata/replace-directives

go 1.19

Expand Down
2 changes: 1 addition & 1 deletion internal/testdata/snapshots/input/sharedtestmodule/go.mod
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
module sg/sharedtestmodule
module github.com/sourcegraph/scip-go/internal/testdata/sharedtestmodule

go 1.19
2 changes: 1 addition & 1 deletion internal/testdata/snapshots/input/switches/go.mod
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
module sg/switches
module github.com/sourcegraph/scip-go/internal/testdata/switches

go 1.19
2 changes: 1 addition & 1 deletion internal/testdata/snapshots/input/testdata/data.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ package testdata
import (
"context"

"sg/testdata/internal/secret"
"github.com/sourcegraph/scip-go/internal/testdata/testdata/internal/secret"
)

// TestInterface is an interface used for testing.
Expand Down
2 changes: 1 addition & 1 deletion internal/testdata/snapshots/input/testdata/go.mod
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
module sg/testdata
module github.com/sourcegraph/scip-go/internal/testdata/testdata

go 1.19
2 changes: 1 addition & 1 deletion internal/testdata/snapshots/input/testdata/typealias.go
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package testdata

import (
"sg/testdata/internal/secret"
"github.com/sourcegraph/scip-go/internal/testdata/testdata/internal/secret"
)

// Type aliased doc
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ package testspecial_test
import (
"testing"

"sg/testspecial"
"github.com/sourcegraph/scip-go/internal/testdata/testspecial"
)

func TestFoo_Blackbox(*testing.T) { testspecial.Foo() }
2 changes: 1 addition & 1 deletion internal/testdata/snapshots/input/testspecial/go.mod
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
module sg/testspecial
module github.com/sourcegraph/scip-go/internal/testdata/testspecial

go 1.19
26 changes: 13 additions & 13 deletions internal/testdata/snapshots/output/alias/main.go
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
package main
// ^^^^ definition github.com/sourcegraph/scip-go . `github.com/sourcegraph/scip-go/internal/testdata/snapshots/input/alias`/
// ^^^^ definition github.com/sourcegraph/scip-go 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/snapshots/input/alias`/
// documentation
// > package main

// Check that we don't panic
// Copied from https://github.com/golang/go/issues/68877#issuecomment-2290000187
type (
T struct{}
// ^ definition github.com/sourcegraph/scip-go . `github.com/sourcegraph/scip-go/internal/testdata/snapshots/input/alias`/T#
// ^ definition github.com/sourcegraph/scip-go 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/snapshots/input/alias`/T#
// documentation
// > ```go
// > type T struct
Expand All @@ -20,7 +20,7 @@
// > struct{}
// > ```
U = T
// ^ definition github.com/sourcegraph/scip-go . `github.com/sourcegraph/scip-go/internal/testdata/snapshots/input/alias`/U#
// ^ definition github.com/sourcegraph/scip-go 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/snapshots/input/alias`/U#
// documentation
// > ```go
// > type U = T
Expand All @@ -32,9 +32,9 @@
// > ```go
// > struct{}
// > ```
// ^ reference github.com/sourcegraph/scip-go . `github.com/sourcegraph/scip-go/internal/testdata/snapshots/input/alias`/T#
// ^ reference github.com/sourcegraph/scip-go 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/snapshots/input/alias`/T#
V = U
// ^ definition github.com/sourcegraph/scip-go . `github.com/sourcegraph/scip-go/internal/testdata/snapshots/input/alias`/V#
// ^ definition github.com/sourcegraph/scip-go 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/snapshots/input/alias`/V#
// documentation
// > ```go
// > type V = U
Expand All @@ -46,9 +46,9 @@
// > ```go
// > struct{}
// > ```
// ^ reference github.com/sourcegraph/scip-go . `github.com/sourcegraph/scip-go/internal/testdata/snapshots/input/alias`/U#
// ^ reference github.com/sourcegraph/scip-go 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/snapshots/input/alias`/U#
S U
// ^ definition github.com/sourcegraph/scip-go . `github.com/sourcegraph/scip-go/internal/testdata/snapshots/input/alias`/S#
// ^ definition github.com/sourcegraph/scip-go 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/snapshots/input/alias`/S#
// documentation
// > ```go
// > type S struct
Expand All @@ -60,9 +60,9 @@
// > ```go
// > struct{}
// > ```
// ^ reference github.com/sourcegraph/scip-go . `github.com/sourcegraph/scip-go/internal/testdata/snapshots/input/alias`/U#
// ^ reference github.com/sourcegraph/scip-go 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/snapshots/input/alias`/U#
Z int32
// ^ definition github.com/sourcegraph/scip-go . `github.com/sourcegraph/scip-go/internal/testdata/snapshots/input/alias`/Z#
// ^ definition github.com/sourcegraph/scip-go 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/snapshots/input/alias`/Z#
// documentation
// > Check that we don't panic
// > Copied from https://github.com/golang/go/issues/68877#issuecomment-2290000187
Expand All @@ -72,14 +72,14 @@
// > ```
)

//⌄ enclosing_range_start github.com/sourcegraph/scip-go . `github.com/sourcegraph/scip-go/internal/testdata/snapshots/input/alias`/f().
//⌄ enclosing_range_start github.com/sourcegraph/scip-go 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/snapshots/input/alias`/f().
func f(u U) {}
// ^ definition github.com/sourcegraph/scip-go . `github.com/sourcegraph/scip-go/internal/testdata/snapshots/input/alias`/f().
// ^ definition github.com/sourcegraph/scip-go 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/snapshots/input/alias`/f().
// documentation
// > ```go
// > func f(u U)
// > ```
// ^ definition local 0
// ^ reference github.com/sourcegraph/scip-go . `github.com/sourcegraph/scip-go/internal/testdata/snapshots/input/alias`/U#
// ⌃ enclosing_range_end github.com/sourcegraph/scip-go . `github.com/sourcegraph/scip-go/internal/testdata/snapshots/input/alias`/f().
// ^ reference github.com/sourcegraph/scip-go 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/snapshots/input/alias`/U#
// ⌃ enclosing_range_end github.com/sourcegraph/scip-go 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/snapshots/input/alias`/f().

60 changes: 30 additions & 30 deletions internal/testdata/snapshots/output/embedded/embedded.go
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
package embedded
// ^^^^^^^^ reference 0.1.test `sg/embedded`/
// ^^^^^^^^ reference 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/embedded`/

import (
"fmt"
Expand All @@ -9,7 +9,7 @@
)

type osExecCommand struct {
// ^^^^^^^^^^^^^ definition 0.1.test `sg/embedded`/osExecCommand#
// ^^^^^^^^^^^^^ definition 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/embedded`/osExecCommand#
// documentation
// > ```go
// > type osExecCommand struct
Expand All @@ -25,17 +25,17 @@
// relationship github.com/golang/go/src go1.22 runtime/stringer# implementation
*exec.Cmd
// ^^^^ reference github.com/golang/go/src go1.22 `os/exec`/
// ^^^ definition 0.1.test `sg/embedded`/osExecCommand#Cmd.
// ^^^ definition 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/embedded`/osExecCommand#Cmd.
// documentation
// > ```go
// > struct field Cmd *os/exec.Cmd
// > ```
// ^^^ reference github.com/golang/go/src go1.22 `os/exec`/Cmd#
}

//⌄ enclosing_range_start 0.1.test `sg/embedded`/wrapExecCommand().
//⌄ enclosing_range_start 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/embedded`/wrapExecCommand().
func wrapExecCommand(c *exec.Cmd) {
// ^^^^^^^^^^^^^^^ definition 0.1.test `sg/embedded`/wrapExecCommand().
// ^^^^^^^^^^^^^^^ definition 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/embedded`/wrapExecCommand().
// documentation
// > ```go
// > func wrapExecCommand(c *Cmd)
Expand All @@ -44,14 +44,14 @@
// ^^^^ reference github.com/golang/go/src go1.22 `os/exec`/
// ^^^ reference github.com/golang/go/src go1.22 `os/exec`/Cmd#
_ = &osExecCommand{Cmd: c}
// ^^^^^^^^^^^^^ reference 0.1.test `sg/embedded`/osExecCommand#
// ^^^ reference 0.1.test `sg/embedded`/osExecCommand#Cmd.
// ^^^^^^^^^^^^^ reference 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/embedded`/osExecCommand#
// ^^^ reference 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/embedded`/osExecCommand#Cmd.
// ^ reference local 0
}
//⌃ enclosing_range_end 0.1.test `sg/embedded`/wrapExecCommand().
//⌃ enclosing_range_end 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/embedded`/wrapExecCommand().

type Inner struct {
// ^^^^^ definition 0.1.test `sg/embedded`/Inner#
// ^^^^^ definition 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/embedded`/Inner#
// documentation
// > ```go
// > type Inner struct
Expand All @@ -65,27 +65,27 @@
// > }
// > ```
X int
// ^ definition 0.1.test `sg/embedded`/Inner#X.
// ^ definition 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/embedded`/Inner#X.
// documentation
// > ```go
// > struct field X int
// > ```
Y int
// ^ definition 0.1.test `sg/embedded`/Inner#Y.
// ^ definition 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/embedded`/Inner#Y.
// documentation
// > ```go
// > struct field Y int
// > ```
Z int
// ^ definition 0.1.test `sg/embedded`/Inner#Z.
// ^ definition 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/embedded`/Inner#Z.
// documentation
// > ```go
// > struct field Z int
// > ```
}

type Outer struct {
// ^^^^^ definition 0.1.test `sg/embedded`/Outer#
// ^^^^^ definition 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/embedded`/Outer#
// documentation
// > ```go
// > type Outer struct
Expand All @@ -98,55 +98,55 @@
// > }
// > ```
Inner
// ^^^^^ definition 0.1.test `sg/embedded`/Outer#Inner.
// ^^^^^ definition 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/embedded`/Outer#Inner.
// documentation
// > ```go
// > struct field Inner sg/embedded.Inner
// > struct field Inner github.com/sourcegraph/scip-go/internal/testdata/embedded.Inner
// > ```
// ^^^^^ reference 0.1.test `sg/embedded`/Inner#
// ^^^^^ reference 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/embedded`/Inner#
W int
// ^ definition 0.1.test `sg/embedded`/Outer#W.
// ^ definition 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/embedded`/Outer#W.
// documentation
// > ```go
// > struct field W int
// > ```
}

//⌄ enclosing_range_start 0.1.test `sg/embedded`/useOfCompositeStructs().
//⌄ enclosing_range_start 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/embedded`/useOfCompositeStructs().
func useOfCompositeStructs() {
// ^^^^^^^^^^^^^^^^^^^^^ definition 0.1.test `sg/embedded`/useOfCompositeStructs().
// ^^^^^^^^^^^^^^^^^^^^^ definition 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/embedded`/useOfCompositeStructs().
// documentation
// > ```go
// > func useOfCompositeStructs()
// > ```
o := Outer{
// ^ definition local 1
// ^^^^^ reference 0.1.test `sg/embedded`/Outer#
// ^^^^^ reference 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/embedded`/Outer#
Inner: Inner{
// ^^^^^ reference 0.1.test `sg/embedded`/Outer#Inner.
// ^^^^^ reference 0.1.test `sg/embedded`/Inner#
// ^^^^^ reference 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/embedded`/Outer#Inner.
// ^^^^^ reference 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/embedded`/Inner#
X: 1,
// ^ reference 0.1.test `sg/embedded`/Inner#X.
// ^ reference 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/embedded`/Inner#X.
Y: 2,
// ^ reference 0.1.test `sg/embedded`/Inner#Y.
// ^ reference 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/embedded`/Inner#Y.
Z: 3,
// ^ reference 0.1.test `sg/embedded`/Inner#Z.
// ^ reference 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/embedded`/Inner#Z.
},
W: 4,
// ^ reference 0.1.test `sg/embedded`/Outer#W.
// ^ reference 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/embedded`/Outer#W.
}

fmt.Printf("> %d\n", o.X)
// ^^^ reference github.com/golang/go/src go1.22 fmt/
// ^^^^^^ reference github.com/golang/go/src go1.22 fmt/Printf().
// ^ reference local 1
// ^ reference 0.1.test `sg/embedded`/Inner#X.
// ^ reference 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/embedded`/Inner#X.
fmt.Println(o.Inner.Y)
// ^^^ reference github.com/golang/go/src go1.22 fmt/
// ^^^^^^^ reference github.com/golang/go/src go1.22 fmt/Println().
// ^ reference local 1
// ^^^^^ reference 0.1.test `sg/embedded`/Outer#Inner.
// ^ reference 0.1.test `sg/embedded`/Inner#Y.
// ^^^^^ reference 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/embedded`/Outer#Inner.
// ^ reference 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/embedded`/Inner#Y.
}
//⌃ enclosing_range_end 0.1.test `sg/embedded`/useOfCompositeStructs().
//⌃ enclosing_range_end 0.1.test `github.com/sourcegraph/scip-go/internal/testdata/embedded`/useOfCompositeStructs().

Loading