golangci-lint/test/testshared/runner_windows.go
2022-10-06 00:09:31 +02:00

44 lines
1.1 KiB
Go

//go:build windows
package testshared
import (
"path/filepath"
"regexp"
"strings"
"testing"
)
// SkipOnWindows skip test on Windows.
func SkipOnWindows(tb testing.TB) {
tb.Skip("not supported on Windows")
}
// NormalizeFilePathInJSON find Go file path and replace `/` with `\\\\`.
func NormalizeFilePathInJSON(in string) string {
exp := regexp.MustCompile(`(?:^|\b)[\w-/.]+\.go`)
return exp.ReplaceAllStringFunc(in, func(s string) string {
return strings.ReplaceAll(s, "/", "\\\\")
})
}
// NormalizeFileInString normalizes in quoted string, ie. replace `\\` with `\\\\`.
func NormalizeFileInString(in string) string {
return strings.ReplaceAll(filepath.FromSlash(in), "\\", "\\\\")
}
// defaultBinaryName returns the path to the default binary.
func defaultBinaryName() string {
return filepath.Join("..", "golangci-lint.exe")
}
// normalizeFilePath find Go file path and replace `/` with `\\`.
func normalizeFilePath(in string) string {
exp := regexp.MustCompile(`(?:^|\b)[\w-/.]+\.go`)
return exp.ReplaceAllStringFunc(in, func(s string) string {
return strings.ReplaceAll(s, "/", "\\")
})
}