github.com/ActiveState/cli@v0.0.0-20240508170324-6801f60cd051/pkg/platform/runtime/setup/implementations/camel/metadata_test.go (about) 1 package camel_test 2 3 import ( 4 "os" 5 "testing" 6 7 "github.com/ActiveState/cli/internal/testhelpers/suite" 8 "github.com/ActiveState/cli/pkg/platform/runtime/setup/implementations/camel" 9 ) 10 11 type MetaDataTestSuite struct { 12 suite.Suite 13 14 dir string 15 } 16 17 func (suite *MetaDataTestSuite) BeforeTest(suiteName, testName string) { 18 var err error 19 suite.dir, err = os.MkdirTemp("", "metadata-test") 20 suite.Require().NoError(err) 21 } 22 23 func (suite *MetaDataTestSuite) AfterTest(suiteName, testName string) { 24 err := os.RemoveAll(suite.dir) 25 suite.Require().NoError(err) 26 } 27 28 func (suite *MetaDataTestSuite) TestMetaData() { 29 contents := `{ 30 "affected_env": "PYTHONPATH", 31 "binaries_in": [ 32 { 33 "path": "bin", 34 "relative": 1 35 } 36 ], 37 "relocation_dir": "/relocate" 38 }` 39 40 metaData, err := camel.ParseMetaData([]byte(contents)) 41 suite.Require().NoError(err) 42 suite.Equal("PYTHONPATH", metaData.AffectedEnv) 43 suite.Equal("/relocate", metaData.RelocationDir) 44 suite.Equal("bin", metaData.BinaryLocations[0].Path) 45 suite.Equal(true, metaData.BinaryLocations[0].Relative) 46 } 47 48 func TestMetaDataTestSuite(t *testing.T) { 49 suite.Run(t, new(MetaDataTestSuite)) 50 }