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 build .

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

# ...but that should not leak into other modules.
! 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 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 build ./throughdep

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

# And transitive dependencies still should not leak.
! 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 build ./throughdep

! 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 build ./throughdep

! 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!
