diff --git a/imports/fix.go b/imports/fix.go index d792a78c..68961ba6 100644 --- a/imports/fix.go +++ b/imports/fix.go @@ -49,7 +49,7 @@ func localPrefixes() []string { var importToGroup = []func(importPath string) (num int, ok bool){ func(importPath string) (num int, ok bool) { for _, p := range localPrefixes() { - if strings.HasPrefix(importPath, p) { + if strings.HasPrefix(importPath, p) || strings.TrimSuffix(p, "/") == importPath { return 3, true } } diff --git a/imports/fix_test.go b/imports/fix_test.go index 9d93b659..10e397d4 100644 --- a/imports/fix_test.go +++ b/imports/fix_test.go @@ -1444,6 +1444,29 @@ import ( const Y = bar.X const _ = runtime.GOOS +`, + }, + { + config: testConfig{ + gopathFiles: map[string]string{ + "foo/foo.go": "package foo \n const X = 1", + "foo/bar/bar.go": "package bar \n const X = 1", + }, + }, + localPrefix: "foo/", + src: "package main \n const Y = bar.X \n const Z = foo.X \n const _ = runtime.GOOS", + want: `package main + +import ( + "runtime" + + "foo" + "foo/bar" +) + +const Y = bar.X +const Z = foo.X +const _ = runtime.GOOS `, }, {