[short] skip

# go/build's Import should find modules by invoking the go command

go build -o $WORK/testimport.exe ./testimport

# GO111MODULE=off
env GO111MODULE=off
! exec $WORK/testimport.exe x/y/z/w .

# GO111MODULE=auto in GOPATH/src
env GO111MODULE=auto
exec $WORK/testimport.exe x/y/z/w .

# GO111MODULE=auto outside GOPATH/src
cd $GOPATH/other
env GO111MODULE=auto
exec $WORK/testimport.exe other/x/y/z/w .
stdout w2.go

! exec $WORK/testimport.exe x/y/z/w .
stderr 'cannot find module providing package x/y/z/w'

cd z
exec $WORK/testimport.exe other/x/y/z/w .
stdout w2.go

# GO111MODULE=on outside GOPATH/src
env GO111MODULE=
exec $WORK/testimport.exe other/x/y/z/w .
stdout w2.go
env GO111MODULE=on
exec $WORK/testimport.exe other/x/y/z/w .
stdout w2.go

# GO111MODULE=on in GOPATH/src
cd $GOPATH/src
env GO111MODULE=
exec $WORK/testimport.exe x/y/z/w .
stdout w1.go
env GO111MODULE=on
exec $WORK/testimport.exe x/y/z/w .
stdout w1.go
cd w
exec $WORK/testimport.exe x/y/z/w ..
stdout w1.go

-- go.mod --
module x/y/z

-- z.go --
package z

-- w/w1.go --
package w

-- testimport/x.go --
package main

import (
	"fmt"
	"go/build"
	"log"
	"os"
	"strings"
)

func main() {
	p, err := build.Import(os.Args[1], os.Args[2], 0)
	if err != nil {
		log.Fatal(err)
	}
	fmt.Printf("%s\n%s\n", p.Dir, strings.Join(p.GoFiles, " "))
}

-- $GOPATH/other/go.mod --
module other/x/y

-- $GOPATH/other/z/w/w2.go --
package w
