presubmit tests (#3630)

* presubmit tests

Rename the test file to presubmit_test.go
Remove println from previous merge.
Add filename hyphen check
Remove the shell presubmit file that did this before

Signed-off-by: Miek Gieben <miek@miek.nl>

* remove

Signed-off-by: Miek Gieben <miek@miek.nl>
This commit is contained in:
Miek Gieben
2020-01-28 15:47:28 +00:00
committed by GitHub
parent 04292f1375
commit 40d0fd8598
2 changed files with 28 additions and 11 deletions

View File

@@ -1,10 +0,0 @@
#!/usr/bin/env bash
echo "** presubmit/$(basename $0)"
for dir in "$@"; do
if find $dir | grep '-'; then
echo "** presubmit/$(basename $0): please use an underscore in filenames instead of a hyphen"
exit 1
fi
done

View File

@@ -1,5 +1,7 @@
package test
// These tests check for meta level items, like trailing whitespace, correct file naming etc.
import (
"bufio"
"fmt"
@@ -30,7 +32,6 @@ func hasTrailingWhitespace(path string, info os.FileInfo, _ error) error {
return nil
}
println("looking at", path)
file, err := os.Open(path)
if err != nil {
return nil
@@ -48,3 +49,29 @@ func hasTrailingWhitespace(path string, info os.FileInfo, _ error) error {
return scanner.Err()
}
func TestFileNameHyphen(t *testing.T) {
err := filepath.Walk("..", hasHyphen)
if err != nil {
t.Fatal(err)
}
}
func hasHyphen(path string, info os.FileInfo, _ error) error {
// only for regular files, not starting with a . and those that are go files.
if !info.Mode().IsRegular() {
return nil
}
if strings.HasPrefix(path, "../.") {
return nil
}
if filepath.Ext(path) != ".go" {
return nil
}
if strings.Index(path, "-") > 0 {
return fmt.Errorf("file %q has a hyphen, please use underscores in file names", path)
}
return nil
}