github.com/terramate-io/tf@v0.0.0-20230830114523-fce866b4dfcd/command/autocomplete_test.go (about) 1 // Copyright (c) HashiCorp, Inc. 2 // SPDX-License-Identifier: MPL-2.0 3 4 package command 5 6 import ( 7 "io/ioutil" 8 "os" 9 "reflect" 10 "testing" 11 12 "github.com/mitchellh/cli" 13 "github.com/posener/complete" 14 ) 15 16 func TestMetaCompletePredictWorkspaceName(t *testing.T) { 17 // Create a temporary working directory that is empty 18 td := t.TempDir() 19 os.MkdirAll(td, 0755) 20 defer testChdir(t, td)() 21 22 // make sure a vars file doesn't interfere 23 err := ioutil.WriteFile(DefaultVarsFilename, nil, 0644) 24 if err != nil { 25 t.Fatal(err) 26 } 27 28 ui := new(cli.MockUi) 29 meta := &Meta{Ui: ui} 30 31 predictor := meta.completePredictWorkspaceName() 32 33 got := predictor.Predict(complete.Args{ 34 Last: "", 35 }) 36 want := []string{"default"} 37 if !reflect.DeepEqual(got, want) { 38 t.Errorf("wrong result\ngot: %#v\nwant: %#v", got, want) 39 } 40 }