code.gitea.io/gitea@v1.19.3/modules/packages/conan/conaninfo_parser_test.go (about) 1 // Copyright 2022 The Gitea Authors. All rights reserved. 2 // SPDX-License-Identifier: MIT 3 4 package conan 5 6 import ( 7 "strings" 8 "testing" 9 10 "github.com/stretchr/testify/assert" 11 ) 12 13 const ( 14 settingsKey = "arch" 15 settingsValue = "x84_64" 16 optionsKey = "shared" 17 optionsValue = "False" 18 requires = "fmt/7.1.3" 19 hash = "74714915a51073acb548ca1ce29afbac" 20 envKey = "CC" 21 envValue = "gcc-10" 22 23 contentConaninfo = `[settings] 24 ` + settingsKey + `=` + settingsValue + ` 25 26 [requires] 27 ` + requires + ` 28 29 [options] 30 ` + optionsKey + `=` + optionsValue + ` 31 32 [full_settings] 33 ` + settingsKey + `=` + settingsValue + ` 34 35 [full_requires] 36 ` + requires + ` 37 38 [full_options] 39 ` + optionsKey + `=` + optionsValue + ` 40 41 [recipe_hash] 42 ` + hash + ` 43 44 [env] 45 ` + envKey + `=` + envValue + ` 46 47 ` 48 ) 49 50 func TestParseConaninfo(t *testing.T) { 51 info, err := ParseConaninfo(strings.NewReader(contentConaninfo)) 52 assert.NotNil(t, info) 53 assert.Nil(t, err) 54 assert.Equal( 55 t, 56 map[string]string{ 57 settingsKey: settingsValue, 58 }, 59 info.Settings, 60 ) 61 assert.Equal(t, info.Settings, info.FullSettings) 62 assert.Equal( 63 t, 64 map[string]string{ 65 optionsKey: optionsValue, 66 }, 67 info.Options, 68 ) 69 assert.Equal(t, info.Options, info.FullOptions) 70 assert.Equal( 71 t, 72 []string{requires}, 73 info.Requires, 74 ) 75 assert.Equal(t, info.Requires, info.FullRequires) 76 assert.Equal(t, hash, info.RecipeHash) 77 assert.Equal( 78 t, 79 map[string][]string{ 80 envKey: {envValue}, 81 }, 82 info.Environment, 83 ) 84 }