Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

go test: .* regexp works correctly only when quoted #41550

Closed
GrigoriyMikhalkin opened this issue Sep 22, 2020 · 1 comment
Closed

go test: .* regexp works correctly only when quoted #41550

GrigoriyMikhalkin opened this issue Sep 22, 2020 · 1 comment

Comments

@GrigoriyMikhalkin
Copy link
Contributor

@GrigoriyMikhalkin GrigoriyMikhalkin commented Sep 22, 2020

What version of Go are you using (go version)?

$ go version
go version go1.15 linux/amd64

Does this issue reproduce with the latest release?

Yes

What operating system and processor architecture are you using (go env)?

go env Output
$ go env
GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/home/greesha/.cache/go-build"
GOENV="/home/greesha/.config/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOINSECURE=""
GOMODCACHE="/home/greesha/.gvm/pkgsets/go1.15/global/pkg/mod"
GONOPROXY=""
GONOSUMDB=""
GOOS="linux"
GOPATH="/home/greesha/.gvm/pkgsets/go1.15/global"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/home/greesha/.gvm/gos/go1.15"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/home/greesha/.gvm/gos/go1.15/pkg/tool/linux_amd64"
GCCGO="gccgo"
AR="ar"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD="/home/greesha/WorkProjects/besttarif/go.mod"
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build984587522=/tmp/go-build -gno-record-gcc-switches"

What did you do?

Run command go test -run .* ./package_name/.

What did you expect to see?

If regexp is quoted go test -run '.*' ./package_name/-- this command will run all tests in package.

What did you see instead?

Instead i get:

go: finding module for package .gitignore
go: finding module for package .idea
go: finding module for package .git
no Go files in /home/greesha/WorkProjects
malformed module path ".git": leading dot in path element
malformed module path ".gitignore": leading dot in path element
malformed module path ".idea": leading dot in path element
@myitcv
Copy link
Member

@myitcv myitcv commented Sep 22, 2020

This is working as expected. Your shell is expanding the unquoted * to be any file/directory in the current directory that begins with a . before go test is invoked.

As you have discovered, you need to quote the command in order that .* is passed verbatim to the go command.

@myitcv myitcv closed this Sep 22, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
2 participants
You can’t perform that action at this time.