cp go.mod go.mod.orig

# The -u flag should not (even temporarily) upgrade modules whose versions are
# determined by explicit queries to any version other than the explicit one.
# Otherwise, 'go get -u' could introduce spurious dependencies.

go get -d -u example.net/a@v0.1.0 example.net/b@v0.1.0
go list -m all
stdout '^example.net/a v0.1.0 '
stdout '^example.net/b v0.1.0 '
! stdout '^example.net/c '


# TODO(bcmills): This property does not yet hold for modules added for
# missing packages when the newly-added module matches a wildcard.

cp go.mod.orig go.mod

go get -d -u example.net/a@v0.1.0 example.net/b/...@v0.1.0
go list -m all
stdout '^example.net/a v0.1.0 '
stdout '^example.net/b v0.1.0 '
stdout '^example.net/c '  # BUG, but a minor and rare one


-- go.mod --
module example

go 1.15

replace (
	example.net/a v0.1.0 => ./a1
	example.net/b v0.1.0 => ./b1
	example.net/b v0.2.0 => ./b2
	example.net/c v0.1.0 => ./c1
	example.net/c v0.2.0 => ./c1
)

-- a1/go.mod --
module example.net/a

go 1.15

// example.net/a needs a dependency on example.net/b, but lacks a requirement
// on it (perhaps due to a missed file in a VCS commit).
-- a1/a.go --
package a
import _ "example.net/b"

-- b1/go.mod --
module example.net/b

go 1.15
-- b1/b.go --
package b

-- b2/go.mod --
module example.net/b

go 1.15

require example.net/c v0.1.0
-- b2/b.go --
package b

-- c1/go.mod --
module example.net/c

go 1.15
