Text file src/cmd/go/testdata/script/mod_fs_patterns.txt

     1  env GO111MODULE=on
     2  
     3  # File system pattern searches should skip sub-modules and vendor directories.
     4  cd x
     5  
     6  # all packages
     7  go list all
     8  stdout ^m$
     9  stdout ^m/vendor$
    10  ! stdout vendor/
    11  stdout ^m/y$
    12  ! stdout ^m/y/z
    13  
    14  # path pattern
    15  go list m/...
    16  stdout ^m$
    17  stdout ^m/vendor$
    18  ! stdout vendor/
    19  stdout ^m/y$
    20  ! stdout ^m/y/z
    21  
    22  # directory pattern
    23  go list ./...
    24  stdout ^m$
    25  stdout ^m/vendor$
    26  ! stdout vendor/
    27  stdout ^m/y$
    28  ! stdout ^m/y/z
    29  
    30  # non-existent directory should not prompt lookups
    31  ! go build -mod=readonly example.com/nonexist
    32  stderr 'import lookup disabled'
    33  
    34  ! go build -mod=readonly ./nonexist
    35  ! stderr 'import lookup disabled'
    36  stderr '^stat '$GOPATH'[/\\]src[/\\]x[/\\]nonexist: directory not found'
    37  
    38  ! go build -mod=readonly ./go.mod
    39  ! stderr 'import lookup disabled'
    40  stderr 'main module \(m\) does not contain package m/go.mod'
    41  
    42  
    43  # File system paths and patterns should allow the '@' character.
    44  cd ../@at
    45  go list $PWD
    46  stdout '^at$'
    47  go list $PWD/...
    48  stdout '^at$'
    49  
    50  # The '@' character is not allowed in directory paths that are part of
    51  # a package path.
    52  cd ../badat/bad@
    53  ! go list .
    54  stderr 'current directory outside main module or its selected dependencies'
    55  ! go list $PWD
    56  stderr 'current directory outside main module or its selected dependencies'
    57  ! go list $PWD/...
    58  stderr 'current directory outside main module or its selected dependencies'
    59  
    60  -- x/go.mod --
    61  module m
    62  
    63  -- x/x.go --
    64  package x
    65  
    66  -- x/vendor/v/v.go --
    67  package v
    68  import _ "golang.org/x/crypto"
    69  
    70  -- x/vendor/v.go --
    71  package main
    72  
    73  -- x/y/y.go --
    74  package y
    75  
    76  -- x/y/z/go.mod --
    77  syntax error!
    78  
    79  -- x/y/z/z.go --
    80  package z
    81  
    82  -- x/y/z/w/w.go --
    83  package w
    84  
    85  -- @at/go.mod --
    86  module at
    87  
    88  go 1.14
    89  -- @at/at.go --
    90  package at
    91  
    92  -- badat/go.mod --
    93  module badat
    94  
    95  go 1.14
    96  -- badat/bad@/bad.go --
    97  package bad
    98  

View as plain text