mirror of
https://github.com/SAP/jenkins-library.git
synced 2024-12-14 11:03:09 +02:00
90d5ab7ca2
* feat(terraformExecute): pass tf outputs to cpe * cleanup Co-authored-by: Oliver Nocon <33484802+OliverNocon@users.noreply.github.com>
118 lines
1.7 KiB
Go
118 lines
1.7 KiB
Go
package terraform
|
|
|
|
import (
|
|
"github.com/stretchr/testify/assert"
|
|
"testing"
|
|
)
|
|
|
|
func TestReadOutputs(t *testing.T) {
|
|
terraformOutputsJson := `{
|
|
"boolean": {
|
|
"sensitive": false,
|
|
"type": "bool",
|
|
"value": true
|
|
},
|
|
"list_any": {
|
|
"sensitive": false,
|
|
"type": [
|
|
"tuple",
|
|
[
|
|
"bool",
|
|
"string",
|
|
"number",
|
|
[
|
|
"tuple",
|
|
[]
|
|
]
|
|
]
|
|
],
|
|
"value": [
|
|
true,
|
|
"2",
|
|
3,
|
|
[]
|
|
]
|
|
},
|
|
"list_numbers": {
|
|
"sensitive": false,
|
|
"type": [
|
|
"tuple",
|
|
[
|
|
"number",
|
|
"number",
|
|
"number"
|
|
]
|
|
],
|
|
"value": [
|
|
1,
|
|
2,
|
|
3
|
|
]
|
|
},
|
|
"list_string": {
|
|
"sensitive": false,
|
|
"type": [
|
|
"tuple",
|
|
[
|
|
"string",
|
|
"string",
|
|
"string"
|
|
]
|
|
],
|
|
"value": [
|
|
"1",
|
|
"2",
|
|
"3"
|
|
]
|
|
},
|
|
"map": {
|
|
"sensitive": false,
|
|
"type": [
|
|
"object",
|
|
{
|
|
"ATTR1": "string",
|
|
"ATTR2": [
|
|
"object",
|
|
{
|
|
"ATTR3": [
|
|
"tuple",
|
|
[]
|
|
]
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"value": {
|
|
"ATTR1": "",
|
|
"ATTR2": {
|
|
"ATTR3": []
|
|
}
|
|
}
|
|
},
|
|
"secret": {
|
|
"sensitive": true,
|
|
"type": "string",
|
|
"value": "this-could-be-a-password"
|
|
},
|
|
"string": {
|
|
"sensitive": false,
|
|
"type": "string",
|
|
"value": "string"
|
|
},
|
|
"number": {
|
|
"sensitive": false,
|
|
"type": "number",
|
|
"value": 1
|
|
}
|
|
}
|
|
`
|
|
outputs, err := ReadOutputs(terraformOutputsJson)
|
|
assert.NoError(t, err)
|
|
|
|
assert.Equal(t, 8, len(outputs))
|
|
|
|
assert.Equal(t, true, outputs["boolean"])
|
|
assert.Equal(t, "string", outputs["string"])
|
|
assert.Equal(t, float64(1), outputs["number"])
|
|
}
|