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

Test Explorer integration identifies TestMain as a test #2039

Closed
segevfiner opened this issue Jan 31, 2022 · 3 comments
Closed

Test Explorer integration identifies TestMain as a test #2039

segevfiner opened this issue Jan 31, 2022 · 3 comments
Assignees
Milestone

Comments

@segevfiner
Copy link
Contributor

What version of Go, VS Code & VS Code Go extension are you using?

Version Information
  • Run go version to get version of Go from the VS Code integrated terminal.
    • go version go1.17.6 windows/amd64
  • Run gopls -v version to get version of Gopls from the VS Code integrated terminal.
    • Build info
      ----------
      golang.org/x/tools/gopls v0.7.5
      golang.org/x/tools/gopls@v0.7.5 h1:8Az52YwcFXTWPvrRomns1C0N+zlgTyyPKWvRazO9GG8=
      github.com/BurntSushi/toml@v0.4.1 h1:GaI7EiDXDRfa8VshkTj7Fym7ha+y8/XxIgD2okUIjLw=
      github.com/google/go-cmp@v0.5.6 h1:BKbKCqvP6I+rmFHt06ZmyQtvB8xAkWdhFyr0ZUNZcxQ=
      github.com/sergi/go-diff@v1.1.0 h1:we8PVUC3FE2uYfodKH/nBHMSetSfHDR6scGdBi+erh0=
      golang.org/x/mod@v0.5.1 h1:OJxoQ/rynoF0dcCdI7cLPktw/hR2cueqYfjm43oqK38=
      golang.org/x/sync@v0.0.0-20210220032951-036812b2e83c h1:5KslGYwFpkhGh+Q16bwMP3cOontH8FOep7tGV86Y7SQ=
      golang.org/x/sys@v0.0.0-20211019181941-9d821ace8654 h1:id054HUawV2/6IGm2IV8KZQjqtwAOo2CYlOToYqa0d0=
      golang.org/x/text@v0.3.7 h1:olpwvP2KacW1ZWvsR7uQhoyTYvKAupfQrRGBFM352Gk=
      golang.org/x/tools@v0.1.9-0.20220114220130-fd7798718afd h1:lTnuArxJC+n54TyvWUPyHhrnGxYvhSi13/aM2Ndr4bs=
      golang.org/x/xerrors@v0.0.0-20200804184101-5ec99f83aff1 h1:go1bK/D/BFZV2I8cIQd1NKEZ+0owSTG1fDTci4IqFcE=
      honnef.co/go/tools@v0.2.1 h1:/EPr//+UMMXwMTkXvCCoaJDq8cpjMO80Ou+L4PDo2mY=
      mvdan.cc/gofumpt@v0.1.1 h1:bi/1aS/5W00E2ny5q65w9SnKpWEF/UIOqDYBILpo9rA=
      mvdan.cc/xurls/v2@v2.3.0 h1:59Olnbt67UKpxF1EwVBopJvkSUBmgtb468E4GVWIZ1I=
  • Run code -v or code-insiders -v to get version of VS Code or VS Code Insiders.
    • 1.63.2
  • Check your installed extensions to get the version of the VS Code Go extension
    • v0.31.0
  • Run Ctrl+Shift+P (Cmd+Shift+P on Mac OS) > Go: Locate Configured Go Tools command.
    • Checking configured tools....
      GOBIN: undefined
      toolsGopath:
      gopath: C:\Users\Segev\go
      GOROOT: C:\Program Files\Go
      PATH: C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0;C:\Windows\System32\OpenSSH;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files\NVIDIA Corporation\NVIDIA NvDLISR;C:\Program Files\PowerShell\7;C:\Program Files\Go\bin;C:\Program Files\CMake\bin;C:\Program Files\Docker\Docker\resources\bin;C:\ProgramData\DockerDesktop\version-bin;C:\Program Files\Git\cmd;C:\Users\Segev\scoop\apps\gsudo\current;C:\Users\Segev.cargo\bin;C:\Users\Segev\AppData\Local\Programs\Python\Python310\Scripts;C:\Users\Segev\AppData\Local\Programs\Python\Python310;C:\Users\Segev\scoop\shims;C:\Users\Segev\AppData\Local\Microsoft\WindowsApps;C:\Users\Segev\AppData\Local\Programs\Microsoft VS Code\bin;C:\Users\Segev\go\bin;

      	go:	C:\Program Files\Go\bin\go.exe: go version go1.17.6 windows/amd64
      
          gopkgs:	C:\Users\Segev\go\bin\gopkgs.exe: go1.17.6
              path	github.com/uudashr/gopkgs/v2/cmd/gopkgs
              mod	github.com/uudashr/gopkgs/v2	v2.1.2	h1:A0+QH6wqNRHORJnxmqfeuBEsK4nYQ7pgcOHhqpqcrpo=
          	dep	github.com/karrick/godirwalk	v1.12.0	h1:nkS4xxsjiZMvVlazd0mFyiwD4BR9f3m6LXGhM2TUx3Y=
          	dep	github.com/pkg/errors	v0.8.1	h1:iURUrRGxPUNPdy5/HRSm+Yj6okJ6UtLINN0Q9M4+h3I=
      
          go-outline:	C:\Users\Segev\go\bin\go-outline.exe: go1.17.6
              path	github.com/ramya-rao-a/go-outline
          	mod	github.com/ramya-rao-a/go-outline	v0.0.0-20210608161538-9736a4bde949	h1:iaD+iVf9xGfajsJp+zYrg9Lrk6gMJ6/hZHO4cYq5D5o=
              dep	golang.org/x/tools	v0.1.1	h1:wGiQel/hW0NnEkJUk8lbzkX2gFJU6PFxf1v5OlCfuOs=
      
          gotests:	C:\Users\Segev\go\bin\gotests.exe: go1.17.6
              path	github.com/cweill/gotests/gotests
              mod	github.com/cweill/gotests	v1.6.0	h1:KJx+/p4EweijYzqPb4Y/8umDCip1Cv6hEVyOx0mE9W8=
              dep	golang.org/x/tools	v0.0.0-20191109212701-97ad0ed33101	h1:LCmXVkvpQCDj724eX6irUTPCJP5GelFHxqGSWL2D1R0=
      
          gomodifytags:	C:\Users\Segev\go\bin\gomodifytags.exe: go1.17.6
              path	github.com/fatih/gomodifytags
              mod	github.com/fatih/gomodifytags	v1.16.0	h1:B65npXIXSk44F6c1hZGE1NazSnt+eXvtdEOG2Uy+QdU=
              dep	github.com/fatih/camelcase	v1.0.0	h1:hxNvNX/xYBp0ovncs8WyWZrOrpBNub/JfaMvbURyft8=
              dep	github.com/fatih/structtag	v1.2.0	h1:/OdNE99OxoI/PqaW/SuSK9uxxT3f/tcSZgon/ssNSx4=
              dep	golang.org/x/tools	v0.0.0-20180824175216-6c1c5e93cdc1	h1:EAPsk8kfGCjxQagrkWjzXlUWe2p3gj5MknO+z2o9GKc=
      
          impl:	C:\Users\Segev\go\bin\impl.exe: go1.17.6
              path	github.com/josharian/impl
              mod	github.com/josharian/impl	v1.1.0	h1:gafhg1OFVMq46ifdkBa8wp4hlGogjktjjA5h/2j4+2k=
              dep	golang.org/x/mod	v0.2.0	h1:KU7oHjnv3XNWfa5COkzUifxZmxp1TyI7ImMXqFxLwvQ=
              dep	golang.org/x/tools	v0.0.0-20200522201501-cb1345f3a375	h1:SjQ2+AKWgZLc1xej6WSzL+Dfs5Uyd5xcZH1mGC411IA=
              dep	golang.org/x/xerrors	v0.0.0-20191204190536-9bdfabe68543	h1:E7g+9GITq07hpfrRu66IVDexMakfv52eLZ2CXBWiKr4=
      
          goplay:	C:\Users\Segev\go\bin\goplay.exe: go1.17.6
              path	github.com/haya14busa/goplay/cmd/goplay
              mod	github.com/haya14busa/goplay	v1.0.0	h1:ED4BMrGQ3WH7H3YXrcnWMVzj1xeSepaYTkLh1DtFi/4=
              dep	github.com/skratchdot/open-golang	v0.0.0-20200116055534-eef842397966	h1:JIAuq3EEf9cgbU6AtGPK4CTG3Zf6CKMNqf0MHTggAUA=
      
          dlv:	C:\Users\Segev\go\bin\dlv.exe: go1.17.6
              path	github.com/go-delve/delve/cmd/dlv
              mod	github.com/go-delve/delve	v1.8.0	h1:uvwPyfr6n2g1S6/bt270lM4fBK76P/3FDCufOsK0CjQ=
              dep	github.com/cilium/ebpf	v0.7.0	h1:1k/q3ATgxSXRdrmPfH8d7YK0GfqVsEKZAX9dQZvs56k=
              dep	github.com/cosiner/argv	v0.1.0	h1:BVDiEL32lwHukgJKP87btEPenzrrHUjajs/8yzaqcXg=
              dep	github.com/cpuguy83/go-md2man/v2	v2.0.0	h1:EoUDS0afbrsXAZ9YQ9jdu/mZ2sXgT1/2yyNng4PGlyM=
              dep	github.com/derekparker/trie	v0.0.0-20200317170641-1fdf38b7b0e9	h1:G765iDCq7bP5opdrPkXk+4V3yfkgV9iGFuheWZ/X/zY=
              dep	github.com/google/go-dap	v0.6.0	h1:Y1RHGUtv3R8y6sXq2dtGRMYrFB2hSqyFVws7jucrzX4=
              dep	github.com/hashicorp/golang-lru	v0.5.4	h1:YDjusn29QI/Das2iO9M0BHnIbxPeyuCHsjMW+lJfyTc=
              dep	github.com/inconshreveable/mousetrap	v1.0.0	h1:Z8tu5sraLXCXIcARxBp/8cbvlwVa7Z1NHg9XEKhtSvM=
              dep	github.com/konsorten/go-windows-terminal-sequences	v1.0.3	h1:CE8S1cTafDpPvMhIxNJKvHsGVBgn1xWYf1NbHQhywc8=
              dep	github.com/mattn/go-colorable	v0.0.9	h1:UVL0vNpWh04HeJXV0KLcaT7r06gOH2l4OW6ddYRUIY4=
              dep	github.com/mattn/go-isatty	v0.0.3	h1:ns/ykhmWi7G9O+8a448SecJU3nSMBXJfqQkl0upE1jI=
              dep	github.com/mattn/go-runewidth	v0.0.3	h1:a+kO+98RDGEfo6asOGMmpodZq4FNtnGP54yps8BzLR4=
              dep	github.com/peterh/liner	v1.2.1	h1:O4BlKaq/LWu6VRWmol4ByWfzx6MfXc5Op5HETyIy5yg=
              dep	github.com/russross/blackfriday/v2	v2.0.1	h1:lPqVAte+HuHNfhJ/0LC98ESWRz8afy9tM/0RK8m9o+Q=
              dep	github.com/shurcooL/sanitized_anchor_name	v1.0.0	h1:PdmoCO6wvbs+7yrJyMORt4/BmY5IYyJwS/kOiWx8mHo=
              dep	github.com/sirupsen/logrus	v1.6.0	h1:UBcNElsrwanuuMsnGSlYmtmgbb23qDR5dG+6X6Oo89I=
              dep	github.com/spf13/cobra	v1.1.3	h1:xghbfqPkxzxP3C/f3n5DdpAbdKLj4ZE4BWQI362l53M=
              dep	github.com/spf13/pflag	v1.0.5	h1:iy+VFUOCP1a+8yFto/drg2CJ5u0yRoB7fZw3DKv/JXA=
              dep	go.starlark.net	v0.0.0-20200821142938-949cc6f4b097	h1:YiRMXXgG+Pg26t1fjq+iAjaauKWMC9cmGFrtOEuwDDg=
              dep	golang.org/x/arch	v0.0.0-20190927153633-4e8777c89be4	h1:QlVATYS7JBoZMVaf+cNjb90WD/beKVHnIxFKT4QaHVI=
              dep	golang.org/x/sys	v0.0.0-20211019181941-9d821ace8654	h1:id054HUawV2/6IGm2IV8KZQjqtwAOo2CYlOToYqa0d0=
              dep	gopkg.in/yaml.v2	v2.4.0	h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY=
      
          staticcheck:	C:\Users\Segev\go\bin\staticcheck.exe: go1.17.6
              path	honnef.co/go/tools/cmd/staticcheck
              mod	honnef.co/go/tools	v0.2.2	h1:MNh1AVMyVX23VUHE2O27jm6lNj3vjO5DexS4A1xvnzk=
              dep	github.com/BurntSushi/toml	v0.3.1	h1:WXkYYl6Yr3qBf1K79EBnL4mak0OimBfB0XUf9Vl28OQ=
              dep	golang.org/x/mod	v0.3.0	h1:RM4zey1++hCTbCVQfnWeKs9/IEsaBLA8vTkd0WVtmH4=
              dep	golang.org/x/sys	v0.0.0-20210119212857-b64e53b001e4	h1:myAQVi0cGEoqQVR5POX+8RR2mrocKqNN1hmeMqhX27k=
              dep	golang.org/x/tools	v0.1.0	h1:po9/4sTYwZU9lPhi1tOrb4hCv3qrhiQ77LZfGa2OjwY=
              dep	golang.org/x/xerrors	v0.0.0-20200804184101-5ec99f83aff1	h1:go1bK/D/BFZV2I8cIQd1NKEZ+0owSTG1fDTci4IqFcE=
      
          gopls:	C:\Users\Segev\go\bin\gopls.exe: go1.17.6
              path	golang.org/x/tools/gopls
              mod	golang.org/x/tools/gopls	v0.7.5	h1:8Az52YwcFXTWPvrRomns1C0N+zlgTyyPKWvRazO9GG8=
              dep	github.com/BurntSushi/toml	v0.4.1	h1:GaI7EiDXDRfa8VshkTj7Fym7ha+y8/XxIgD2okUIjLw=
              dep	github.com/google/go-cmp	v0.5.6	h1:BKbKCqvP6I+rmFHt06ZmyQtvB8xAkWdhFyr0ZUNZcxQ=
              dep	github.com/sergi/go-diff	v1.1.0	h1:we8PVUC3FE2uYfodKH/nBHMSetSfHDR6scGdBi+erh0=
              dep	golang.org/x/mod	v0.5.1	h1:OJxoQ/rynoF0dcCdI7cLPktw/hR2cueqYfjm43oqK38=
              dep	golang.org/x/sync	v0.0.0-20210220032951-036812b2e83c	h1:5KslGYwFpkhGh+Q16bwMP3cOontH8FOep7tGV86Y7SQ=
              dep	golang.org/x/sys	v0.0.0-20211019181941-9d821ace8654	h1:id054HUawV2/6IGm2IV8KZQjqtwAOo2CYlOToYqa0d0=
              dep	golang.org/x/text	v0.3.7	h1:olpwvP2KacW1ZWvsR7uQhoyTYvKAupfQrRGBFM352Gk=
              dep	golang.org/x/tools	v0.1.9-0.20220114220130-fd7798718afd	h1:lTnuArxJC+n54TyvWUPyHhrnGxYvhSi13/aM2Ndr4bs=
              dep	golang.org/x/xerrors	v0.0.0-20200804184101-5ec99f83aff1	h1:go1bK/D/BFZV2I8cIQd1NKEZ+0owSTG1fDTci4IqFcE=
              dep	honnef.co/go/tools	v0.2.1	h1:/EPr//+UMMXwMTkXvCCoaJDq8cpjMO80Ou+L4PDo2mY=
              dep	mvdan.cc/gofumpt	v0.1.1	h1:bi/1aS/5W00E2ny5q65w9SnKpWEF/UIOqDYBILpo9rA=
              dep	mvdan.cc/xurls/v2	v2.3.0	h1:59Olnbt67UKpxF1EwVBopJvkSUBmgtb468E4GVWIZ1I=
      
      
      go env
      Workspace Folder (dockerexec): c:\Users\Segev\prj\dockerexec
          set GO111MODULE=
          set GOARCH=amd64
          set GOBIN=
          set GOCACHE=C:\Users\Segev\AppData\Local\go-build
          set GOENV=C:\Users\Segev\AppData\Roaming\go\env
          set GOEXE=.exe
          set GOEXPERIMENT=
          set GOFLAGS=
          set GOHOSTARCH=amd64
          set GOHOSTOS=windows
          set GOINSECURE=
          set GOMODCACHE=C:\Users\Segev\go\pkg\mod
          set GONOPROXY=
          set GONOSUMDB=
          set GOOS=windows
          set GOPATH=C:\Users\Segev\go
          set GOPRIVATE=
          set GOPROXY=https://proxy.golang.org,direct
          set GOROOT=C:\Program Files\Go
          set GOSUMDB=sum.golang.org
          set GOTMPDIR=
          set GOTOOLDIR=C:\Program Files\Go\pkg\tool\windows_amd64
          set GOVCS=
          set GOVERSION=go1.17.6
          set GCCGO=gccgo
          set AR=ar
          set CC=gcc
          set CXX=g++
          set CGO_ENABLED=1
          set GOMOD=c:\Users\Segev\prj\dockerexec\go.mod
          set CGO_CFLAGS=-g -O2
          set CGO_CPPFLAGS=
          set CGO_CXXFLAGS=-g -O2
          set CGO_FFLAGS=-g -O2
          set CGO_LDFLAGS=-g -O2
          set PKG_CONFIG=pkg-config
          set GOGCCFLAGS=-m64 -mthreads -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=C:\Users\Segev\AppData\Local\Temp\go-build2352482720=/tmp/go-build -gno-record-gcc-switches
      

Share the Go related settings you have added/edited

N/A

Describe the bug

The extension will detect TestMain as a test, although this is not an actual test, rather it is the testing entry point for initialization and customization, and won't ever run as a test.

Steps to reproduce the behavior:

  1. Create some_test.go:
    package some
    
    import (
    	"os"
        "testing"
    )
    
    func TestMain(m *testing.M) {
        os.Exit(m.Run())
    }
    
    func TestTrue(t *testing.T) {
    
    }
  2. Check the test explorer and codelens.

Screenshots or recordings

image
image

@gopherbot gopherbot added this to the Untriaged milestone Jan 31, 2022
@hyangah
Copy link
Contributor

hyangah commented Jan 31, 2022

#482 closed in favor of #654.
But now test explorer was introduced and it uses document symbol, I think it actually depends on how #1020 is resolved.

@gopherbot
Copy link
Collaborator

Change https://go.dev/cl/394136 mentions this issue: codelens: skip run-test and debug-test links for TestMain

@gopherbot
Copy link
Collaborator

Change https://go.dev/cl/394136 mentions this issue: codelens: skip run-test and debug-test links and explorer entry for TestMain(*testing.M)

@polinasok polinasok self-assigned this Mar 30, 2022
@hyangah hyangah modified the milestones: vscode-go/later, v0.34.0 May 23, 2022
@golang golang locked and limited conversation to collaborators May 23, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
5 participants