github.com/hashicorp/packer@v1.14.3/packer_test/core_tests/local_eval_test.go (about) 1 package core_test 2 3 import ( 4 "fmt" 5 6 "github.com/hashicorp/packer/packer_test/common/check" 7 ) 8 9 func (ts *PackerCoreTestSuite) TestEvalLocalsOrder() { 10 ts.SkipNoAcc() 11 12 pluginDir := ts.MakePluginDir() 13 defer pluginDir.Cleanup() 14 15 ts.PackerCommand().UsePluginDir(pluginDir). 16 Runs(10). 17 Stdin("local.test_local\n"). 18 SetArgs("console", "./templates/locals_no_order.pkr.hcl"). 19 Assert(check.MustSucceed(), 20 check.GrepInverted("\\[\\]", check.GrepStdout)) 21 } 22 23 func (ts *PackerCoreTestSuite) TestLocalDuplicates() { 24 pluginDir := ts.MakePluginDir() 25 defer pluginDir.Cleanup() 26 27 for _, cmd := range []string{"console", "validate", "build"} { 28 ts.Run(fmt.Sprintf("duplicate local detection with %s command - expect error", cmd), func() { 29 ts.PackerCommand().UsePluginDir(pluginDir). 30 SetArgs(cmd, "./templates/locals_duplicate.pkr.hcl"). 31 Assert(check.MustFail(), 32 check.Grep("Duplicate local definition"), 33 check.Grep("Local variable \"test\" is defined twice")) 34 }) 35 } 36 }