grim/convey
Clone
Summary
Browse
Changes
Graph
closing merged branch
empty-vars
2017-10-13, Gary Kramlich
e25d7598fc98
closing merged branch
/*
* Convey
* Copyright 2016-2017 Gary Kramlich <grim@reaperworld.com>
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package
convey
import
(
"github.com/aphistic/sweet"
.
"github.com/onsi/gomega"
)
type
environmentSuite
struct
{}
var
baseData
=
`tasks:
foo:
image: notreal
plans:
default:
stages:
- tasks:
- foo
`
/* These test ensure that the convey yaml config properly loads environment
* settings.
*/
func
(
e
*
environmentSuite
)
TestEnvironmentUnmarshalGlobalSlice
(
t
sweet
.
T
)
{
data
:=
`environment:
- foo=bar
- baz
`
+
baseData
loader
:=
Loader
{}
cfg
,
err
:=
loader
.
Load
(
"."
,
"."
,
[]
byte
(
data
))
Expect
(
err
).
To
(
BeNil
())
Expect
(
cfg
.
Environment
).
To
(
ConsistOf
([]
string
{
"foo=bar"
,
"baz"
}))
}
func
(
e
*
environmentSuite
)
TestEnvironmentUnmarshalGlobalString
(
t
sweet
.
T
)
{
data
:=
`environment: foo=bar
`
+
baseData
loader
:=
Loader
{}
cfg
,
err
:=
loader
.
Load
(
"."
,
"."
,
[]
byte
(
data
))
Expect
(
err
).
To
(
BeNil
())
Expect
(
cfg
.
Environment
).
To
(
Equal
([]
string
{
"foo=bar"
}))
}
func
(
e
*
environmentSuite
)
TestEnvironmentUnmarshalGlobalOverrideSlice
(
t
sweet
.
T
)
{
loader
:=
Loader
{}
cfg
,
err
:=
loader
.
Load
(
"."
,
"."
,
[]
byte
(
baseData
))
Expect
(
err
).
To
(
BeNil
())
Expect
(
cfg
.
Environment
).
To
(
BeEmpty
())
overrideData
:=
`
environment:
- foo=bar
- baz
`
loader
.
LoadOverride
(
"."
,
"."
,
[]
byte
(
overrideData
),
cfg
)
Expect
(
cfg
.
Environment
).
To
(
ConsistOf
([]
string
{
"foo=bar"
,
"baz"
}))
}
func
(
e
*
environmentSuite
)
TestEnvironmentUnmarshalGlobalOverrideString
(
t
sweet
.
T
)
{
loader
:=
Loader
{}
cfg
,
err
:=
loader
.
Load
(
"."
,
"."
,
[]
byte
(
baseData
))
Expect
(
err
).
To
(
BeNil
())
Expect
(
cfg
.
Environment
).
To
(
BeEmpty
())
overrideData
:=
`
environment: foo=bar
`
loader
.
LoadOverride
(
"."
,
"."
,
[]
byte
(
overrideData
),
cfg
)
Expect
(
cfg
.
Environment
).
To
(
Equal
([]
string
{
"foo=bar"
}))
}