env GO111MODULE=on
[short] skip

# golang.org/x/internal should be importable from other golang.org/x modules.
go mod edit -module=golang.org/x/anything
go get -d .

# ...and their tests...
go test
stdout PASS

# ...but that should not leak into other modules.
go get -d ./baddep
! go build ./baddep
stderr golang.org[/\\]notx[/\\]useinternal
stderr 'use of internal package golang.org/x/.* not allowed'

# Internal packages in the standard library should not leak into modules.
go get -d ./fromstd
! go build ./fromstd
stderr 'use of internal package internal/testenv not allowed'

# Dependencies should be able to use their own internal modules...
go mod edit -module=golang.org/notx
go get -d ./throughdep

# ... but other modules should not, even if they have transitive dependencies.
go get -d .
! go build .
stderr 'use of internal package golang.org/x/.* not allowed'

# And transitive dependencies still should not leak.
go get -d ./baddep
! go build ./baddep
stderr golang.org[/\\]notx[/\\]useinternal
stderr 'use of internal package golang.org/x/.* not allowed'

# Replacing an internal module should keep it internal to the same paths.
go mod edit -module=golang.org/notx
go mod edit -replace golang.org/x/internal=./replace/golang.org/notx/internal
go get -d ./throughdep

go get -d ./baddep
! go build ./baddep
stderr golang.org[/\\]notx[/\\]useinternal
stderr 'use of internal package golang.org/x/.* not allowed'

go mod edit -replace golang.org/x/internal=./vendor/golang.org/x/internal
go get -d ./throughdep

go get -d ./baddep
! go build ./baddep
stderr golang.org[/\\]notx[/\\]useinternal
stderr 'use of internal package golang.org/x/.* not allowed'

-- go.mod --
module TBD
go 1.12
-- useinternal.go --
package useinternal
import _ "golang.org/x/internal/subtle"

-- useinternal_test.go --
package useinternal_test
import (
	"testing"
	_ "golang.org/x/internal/subtle"
)

func Test(*testing.T) {}

-- throughdep/useinternal.go --
package throughdep
import _ "golang.org/x/useinternal"

-- baddep/useinternal.go --
package baddep
import _ "golang.org/notx/useinternal"

-- fromstd/useinternal.go --
package fromstd
import _ "internal/testenv"

-- replace/golang.org/notx/internal/go.mod --
module golang.org/x/internal

-- replace/golang.org/notx/internal/subtle/subtle.go --
package subtle
// Ha ha! Nothing here!

-- vendor/golang.org/x/internal/go.mod --
module golang.org/x/internal

-- vendor/golang.org/x/internal/subtle/subtle.go --
package subtle
// Ha ha! Nothing here!
