# Because 'go mod' subcommands ignore build constraints, they can encounter
# package-import cycles that are not possible in an ordinary build. This test
# verifies that such cycles are handled even when they cross module boundaries.

# First, verify that the import graph depends on build tags as expected.
go list -deps example.com/left
stdout '^example.com/right$'
go list -deps example.com/right
! stdout left

env GOFLAGS=-tags=mirror
go list -deps example.com/left
! stdout right
go list -deps example.com/right
stdout '^example.com/left$'
env GOFLAGS=''

# 'go mod why' should be agnostic to build tags.
go mod why example.com/left
stdout '^example.com/chiral$\n^example.com/left$'
go mod why example.com/right
stdout '^example.com/chiral$\n^example.com/right$'

env GOFLAGS='-tags=mirror'
go mod why example.com/left
stdout '^example.com/chiral$\n^example.com/left$'
go mod why example.com/right
stdout '^example.com/chiral$\n^example.com/right$'
env GOFLAGS=''

# 'go mod tidy' should successfully handle the cycle.
env GOFLAGS=-mod=readonly
go mod tidy

# 'go mod vendor' should copy in both packages without crashing.
go mod vendor
exists vendor/example.com/left/default.go
exists vendor/example.com/left/mirror.go
exists vendor/example.com/right/default.go
exists vendor/example.com/right/mirror.go

-- go.mod --
module example.com/chiral

go 1.14

require (
	example.com/left v0.1.0
	example.com/right v0.1.0
)

replace (
	example.com/left => ./left
	example.com/right => ./right
)
-- chiral.go --
// Package chiral imports packages in an order that depends on build tags.
package chiral
-- default.go --
// +build !mirror

package chiral

import _ "example.com/left"
-- mirror.go --
// +build mirror

package chiral

import _ "example.com/right"
-- left/go.mod --
module example.com/left

go 1.14

require example.com/right v0.1.0

replace example.com/right v0.1.0 => ../right
-- left/default.go --
// +build !mirror

package left

import _ "example.com/right"
-- left/mirror.go --
// +build mirror

package left
-- right/go.mod --
module example.com/right

go 1.14

require example.com/left v0.1.0

replace example.com/left v0.1.0 => ../left
-- right/default.go --
// +build !mirror

package right
-- right/mirror.go --
// +build mirror

package right

import _ "example.com/left"
