diff --git a/internal/lsp/testdata/format/one_line.go.in b/internal/lsp/testdata/format/one_line.go.in new file mode 100644 index 00000000..30f41375 --- /dev/null +++ b/internal/lsp/testdata/format/one_line.go.in @@ -0,0 +1 @@ +package format //@format("package") \ No newline at end of file diff --git a/internal/lsp/testdata/format/one_line.gofmt-d.golden.go b/internal/lsp/testdata/format/one_line.gofmt-d.golden.go new file mode 100644 index 00000000..44f557c9 --- /dev/null +++ b/internal/lsp/testdata/format/one_line.gofmt-d.golden.go @@ -0,0 +1,6 @@ +--- format/one_line.go.orig ++++ format/one_line.go +@@ -1 +1 @@ +-package format //@format("package") +\ No newline at end of file ++package format //@format("package") diff --git a/internal/lsp/testdata/format/one_line.gofmt.golden.go b/internal/lsp/testdata/format/one_line.gofmt.golden.go new file mode 100644 index 00000000..59aca823 --- /dev/null +++ b/internal/lsp/testdata/format/one_line.gofmt.golden.go @@ -0,0 +1 @@ +package format //@format("package") diff --git a/internal/lsp/tests/tests.go b/internal/lsp/tests/tests.go index 22d4a5d8..4a0363b3 100644 --- a/internal/lsp/tests/tests.go +++ b/internal/lsp/tests/tests.go @@ -29,7 +29,7 @@ import ( const ( ExpectedCompletionsCount = 85 ExpectedDiagnosticsCount = 17 - ExpectedFormatCount = 4 + ExpectedFormatCount = 5 ExpectedDefinitionsCount = 21 ExpectedTypeDefinitionsCount = 2 ExpectedHighlightsCount = 2 diff --git a/internal/span/span.go b/internal/span/span.go index 7719257d..6da7a05f 100644 --- a/internal/span/span.go +++ b/internal/span/span.go @@ -249,7 +249,7 @@ func (s *Span) update(c Converter, withPos, withOffset bool) error { return err } } - if withOffset && !s.HasOffset() { + if withOffset && (!s.HasOffset() || (s.v.End.hasPosition() && !s.v.End.hasOffset())) { if err := s.v.Start.updateOffset(c); err != nil { return err }