This test verifies the behavior of the 'source.organizeImports' code action. -- go.mod -- module mod.test/imports go 1.18 -- add.go -- package imports //@codeaction("imports", "", "source.organizeImports", add) import ( "fmt" ) func _() { fmt.Println("") bytes.NewBuffer(nil) //@diag("bytes", re"(undeclared|undefined)") } -- @add/add.go -- package imports //@codeaction("imports", "", "source.organizeImports", add) import ( "bytes" "fmt" ) func _() { fmt.Println("") bytes.NewBuffer(nil) //@diag("bytes", re"(undeclared|undefined)") } -- good.go -- package imports //@codeactionerr("imports", "", "source.organizeImports", re"found 0 CodeActions") import "fmt" func _() { fmt.Println("") } -- issue35458.go -- // package doc package imports //@codeaction("imports", "", "source.organizeImports", issue35458) func _() { println("Hello, world!") } -- @issue35458/issue35458.go -- // package doc package imports //@codeaction("imports", "", "source.organizeImports", issue35458) func _() { println("Hello, world!") } -- multi.go -- package imports //@codeaction("imports", "", "source.organizeImports", multi) import "fmt" import "bytes" //@diag("\"bytes\"", re"not used") func _() { fmt.Println("") } -- @multi/multi.go -- package imports //@codeaction("imports", "", "source.organizeImports", multi) import "fmt" //@diag("\"bytes\"", re"not used") func _() { fmt.Println("") } -- needs.go -- package imports //@codeaction("package", "", "source.organizeImports", needs) func goodbye() { fmt.Printf("HI") //@diag("fmt", re"(undeclared|undefined)") log.Printf("byeeeee") //@diag("log", re"(undeclared|undefined)") } -- @needs/needs.go -- package imports //@codeaction("package", "", "source.organizeImports", needs) import ( "fmt" "log" ) func goodbye() { fmt.Printf("HI") //@diag("fmt", re"(undeclared|undefined)") log.Printf("byeeeee") //@diag("log", re"(undeclared|undefined)") } -- remove.go -- package imports //@codeaction("package", "", "source.organizeImports", remove) import ( "bytes" //@diag("\"bytes\"", re"not used") "fmt" ) func _() { fmt.Println("") } -- @remove/remove.go -- package imports //@codeaction("package", "", "source.organizeImports", remove) import ( "fmt" ) func _() { fmt.Println("") } -- removeall.go -- package imports //@codeaction("package", "", "source.organizeImports", removeall) import ( "bytes" //@diag("\"bytes\"", re"not used") "fmt" //@diag("\"fmt\"", re"not used") ) func _() { } -- @removeall/removeall.go -- package imports //@codeaction("package", "", "source.organizeImports", removeall) //@diag("\"fmt\"", re"not used") func _() { } -- twolines.go -- package imports func main() {} //@codeactionerr("main", "", "source.organizeImports", re"found 0")