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

     1  # Test editing go.work files.
     2  
     3  go work init m
     4  cmpenv go.work go.work.want_initial
     5  
     6  go work edit -use n
     7  cmpenv go.work go.work.want_use_n
     8  
     9  grep go go.work
    10  go work edit -go none
    11  ! grep go go.work
    12  
    13  go work edit -go 1.18
    14  cmp go.work go.work.want_go_118
    15  
    16  go work edit -dropuse m
    17  cmp go.work go.work.want_dropuse_m
    18  
    19  go work edit -replace=x.1@v1.3.0=y.1@v1.4.0 -replace='x.1@v1.4.0 = ../z'
    20  cmp go.work go.work.want_add_replaces
    21  
    22  go work edit -use n -use ../a -use /b -use c -use c
    23  cmp go.work go.work.want_multiuse
    24  
    25  go work edit -dropuse /b -dropuse n
    26  cmp go.work go.work.want_multidropuse
    27  
    28  go work edit -dropreplace='x.1@v1.4.0'
    29  cmp go.work go.work.want_dropreplace
    30  
    31  go work edit -print -go 1.19 -use b -dropuse c -replace 'x.1@v1.4.0 = ../z' -dropreplace x.1 -dropreplace x.1@v1.3.0
    32  cmp stdout go.work.want_print
    33  
    34  go work edit -json -go 1.19 -use b -dropuse c -replace 'x.1@v1.4.0 = ../z' -dropreplace x.1 -dropreplace x.1@v1.3.0
    35  cmp stdout go.work.want_json
    36  
    37  env GOWORK=$GOPATH/src/unformatted
    38  go work edit -print -fmt
    39  cmp stdout formatted
    40  
    41  -- m/go.mod --
    42  module m
    43  
    44  go 1.18
    45  -- go.work.want_initial --
    46  go $goversion
    47  
    48  use ./m
    49  -- go.work.want_use_n --
    50  go $goversion
    51  
    52  use (
    53  	./m
    54  	./n
    55  )
    56  -- go.work.want_go_118 --
    57  go 1.18
    58  
    59  use (
    60  	./m
    61  	./n
    62  )
    63  -- go.work.want_dropuse_m --
    64  go 1.18
    65  
    66  use ./n
    67  -- go.work.want_add_replaces --
    68  go 1.18
    69  
    70  use ./n
    71  
    72  replace (
    73  	x.1 v1.3.0 => y.1 v1.4.0
    74  	x.1 v1.4.0 => ../z
    75  )
    76  -- go.work.want_multiuse --
    77  go 1.18
    78  
    79  use (
    80  	../a
    81  	./c
    82  	./n
    83  	/b
    84  )
    85  
    86  replace (
    87  	x.1 v1.3.0 => y.1 v1.4.0
    88  	x.1 v1.4.0 => ../z
    89  )
    90  -- go.work.want_multidropuse --
    91  go 1.18
    92  
    93  use (
    94  	../a
    95  	./c
    96  )
    97  
    98  replace (
    99  	x.1 v1.3.0 => y.1 v1.4.0
   100  	x.1 v1.4.0 => ../z
   101  )
   102  -- go.work.want_dropreplace --
   103  go 1.18
   104  
   105  use (
   106  	../a
   107  	./c
   108  )
   109  
   110  replace x.1 v1.3.0 => y.1 v1.4.0
   111  -- go.work.want_print --
   112  go 1.19
   113  
   114  use (
   115  	../a
   116  	./b
   117  )
   118  
   119  replace x.1 v1.4.0 => ../z
   120  -- go.work.want_json --
   121  {
   122  	"Go": "1.19",
   123  	"Use": [
   124  		{
   125  			"DiskPath": "../a"
   126  		},
   127  		{
   128  			"DiskPath": "./b"
   129  		}
   130  	],
   131  	"Replace": [
   132  		{
   133  			"Old": {
   134  				"Path": "x.1",
   135  				"Version": "v1.4.0"
   136  			},
   137  			"New": {
   138  				"Path": "../z"
   139  			}
   140  		}
   141  	]
   142  }
   143  -- unformatted --
   144  go 1.18
   145   use (
   146   a
   147    b
   148    c
   149    )
   150    replace (
   151    x.1 v1.3.0 => y.1 v1.4.0
   152                              x.1 v1.4.0 => ../z
   153                              )
   154  -- formatted --
   155  go 1.18
   156  
   157  use (
   158  	a
   159  	b
   160  	c
   161  )
   162  
   163  replace (
   164  	x.1 v1.3.0 => y.1 v1.4.0
   165  	x.1 v1.4.0 => ../z
   166  )
   167  

View as plain text