tool: generate owners for modules in go.mod (#69583)

* test: add test for getFiles

* fix: fix getFiles test to take in a module name (not modfile name)

* move functionality unrelated to getFiles into main func

* attempt to getFiles with ParseDir, empty map returned; TODO: restore modowners_generation_script_test.go

* test

* Revert "test"

This reverts commit 2b519f3725.

* Revert "attempt to getFiles with ParseDir, empty map returned; TODO: restore modowners_generation_script_test.go"

This reverts commit eb95247487.

* attempt to getFiles with ParseDir, empty map returned; TODO: restore modowners_generation_script_test.go

* post-pairing with daniel, can access imports in a file

* clean up comments for readability

* try to return map of importName: files that import the improt

* refactor: change getFiles to accept single import name and return list of files that import it

* add log to see importPath and importName

* hasImport working

* start modowners script & add comments for hasImport

* fix modules() and uncomment main

* start script to add team names to go.mod, currently can access a map of the import and name

* 💩

* calculate root directory to point to correct go.mod

* chore: delete unnecessary files

* chore: uncomment tests

* chore: remove unnecessary comments, update documentation comments with correct cli commands

* fix: revert changes in go.mod and go.sum

* where is my dependency flag value??

* fix: owners function now can list all owners (with counts) or list a specific owner for a given dependency

* fix: change fmt.Println to logger.Println for owners func

* partial fix: modules now only prints dependencies owned by given team. -i functionality still not working properly

* fix: fix TestModules, modules

* chore: update check error message to specify user needs to assign owner to new dependency

* fix: adjust punctuation in error string

* fix: clean up comments in modowners

* chore: remove note in modowners_test
This commit is contained in:
Kat Yang
2023-07-18 13:42:09 -04:00
committed by GitHub
parent 72c92ca187
commit 36264a095f
5 changed files with 51 additions and 77 deletions

View File

@@ -69,7 +69,7 @@ func TestCheck(t *testing.T) {
func TestModules(t *testing.T) {
buf := &bytes.Buffer{}
logger := log.New(buf, "", 0)
filesystem := fstest.MapFS{"go.txd": &fstest.MapFile{Data: []byte(`
filesystem := fstest.MapFS{"go.mod": &fstest.MapFile{Data: []byte(`
require (
cloud.google.com/go/storage v1.28.1
cuelang.org/go v0.5.0 // @as-code @backend-platform
@@ -78,7 +78,7 @@ func TestModules(t *testing.T) {
)
`)}}
err := modules(filesystem, logger, []string{"-m", "go.txd"}) // NOTE: pass various flags, these are cmd line arguments
err := modules(filesystem, logger, []string{"go.mod"})
if err != nil {
t.Error(err, buf.String())
}
@@ -87,16 +87,17 @@ func TestModules(t *testing.T) {
// Expected results
expectedModules := []string{
"cloud.google.com/go/storage v1.28.1",
"cuelang.org/go v0.5.0",
"github.com/Azure/azure-sdk-for-go v65.0.0+incompatible",
"github.com/Masterminds/semver v1.5.0",
"cloud.google.com/go/storage@v1.28.1",
"cuelang.org/go@v0.5.0",
"github.com/Masterminds/semver@v1.5.0",
"",
}
expectedResults := strings.Join(expectedModules, "\n")
// Compare logs to expected results
if logs != expectedResults {
t.Error(err)
t.Error(logs)
t.Error(expectedResults)
}
}