2016-10-11 01:04:39 +00:00
|
|
|
package config
|
|
|
|
|
|
|
|
import (
|
|
|
|
"reflect"
|
|
|
|
"testing"
|
2018-06-07 19:34:18 +00:00
|
|
|
|
2022-03-15 12:42:43 +00:00
|
|
|
"github.com/hashicorp/nomad/ci"
|
2018-06-07 19:34:18 +00:00
|
|
|
"github.com/stretchr/testify/require"
|
2016-10-11 01:04:39 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
func TestVaultConfig_Merge(t *testing.T) {
|
2022-03-15 12:42:43 +00:00
|
|
|
ci.Parallel(t)
|
|
|
|
|
2016-10-11 01:04:39 +00:00
|
|
|
trueValue, falseValue := true, false
|
|
|
|
c1 := &VaultConfig{
|
|
|
|
Enabled: &falseValue,
|
|
|
|
Token: "1",
|
2017-02-02 00:37:08 +00:00
|
|
|
Role: "1",
|
2016-10-11 01:04:39 +00:00
|
|
|
AllowUnauthenticated: &trueValue,
|
|
|
|
TaskTokenTTL: "1",
|
|
|
|
Addr: "1",
|
|
|
|
TLSCaFile: "1",
|
|
|
|
TLSCaPath: "1",
|
|
|
|
TLSCertFile: "1",
|
|
|
|
TLSKeyFile: "1",
|
|
|
|
TLSSkipVerify: &trueValue,
|
|
|
|
TLSServerName: "1",
|
|
|
|
}
|
|
|
|
|
|
|
|
c2 := &VaultConfig{
|
|
|
|
Enabled: &trueValue,
|
|
|
|
Token: "2",
|
2017-02-02 00:37:08 +00:00
|
|
|
Role: "2",
|
2016-10-11 01:04:39 +00:00
|
|
|
AllowUnauthenticated: &falseValue,
|
|
|
|
TaskTokenTTL: "2",
|
|
|
|
Addr: "2",
|
|
|
|
TLSCaFile: "2",
|
|
|
|
TLSCaPath: "2",
|
|
|
|
TLSCertFile: "2",
|
|
|
|
TLSKeyFile: "2",
|
|
|
|
TLSSkipVerify: nil,
|
|
|
|
TLSServerName: "2",
|
|
|
|
}
|
|
|
|
|
|
|
|
e := &VaultConfig{
|
|
|
|
Enabled: &trueValue,
|
|
|
|
Token: "2",
|
2017-02-02 00:37:08 +00:00
|
|
|
Role: "2",
|
2016-10-11 01:04:39 +00:00
|
|
|
AllowUnauthenticated: &falseValue,
|
|
|
|
TaskTokenTTL: "2",
|
|
|
|
Addr: "2",
|
|
|
|
TLSCaFile: "2",
|
|
|
|
TLSCaPath: "2",
|
|
|
|
TLSCertFile: "2",
|
|
|
|
TLSKeyFile: "2",
|
|
|
|
TLSSkipVerify: &trueValue,
|
|
|
|
TLSServerName: "2",
|
|
|
|
}
|
|
|
|
|
|
|
|
result := c1.Merge(c2)
|
|
|
|
if !reflect.DeepEqual(result, e) {
|
|
|
|
t.Fatalf("bad:\n%#v\n%#v", result, e)
|
|
|
|
}
|
|
|
|
}
|
2018-06-07 19:34:18 +00:00
|
|
|
|
|
|
|
func TestVaultConfig_IsEqual(t *testing.T) {
|
2022-03-15 12:42:43 +00:00
|
|
|
ci.Parallel(t)
|
2022-04-05 18:18:10 +00:00
|
|
|
|
2018-06-07 19:34:18 +00:00
|
|
|
require := require.New(t)
|
|
|
|
|
|
|
|
trueValue, falseValue := true, false
|
|
|
|
c1 := &VaultConfig{
|
|
|
|
Enabled: &falseValue,
|
|
|
|
Token: "1",
|
|
|
|
Role: "1",
|
|
|
|
AllowUnauthenticated: &trueValue,
|
|
|
|
TaskTokenTTL: "1",
|
|
|
|
Addr: "1",
|
|
|
|
TLSCaFile: "1",
|
|
|
|
TLSCaPath: "1",
|
|
|
|
TLSCertFile: "1",
|
|
|
|
TLSKeyFile: "1",
|
|
|
|
TLSSkipVerify: &trueValue,
|
|
|
|
TLSServerName: "1",
|
|
|
|
}
|
|
|
|
|
|
|
|
c2 := &VaultConfig{
|
|
|
|
Enabled: &falseValue,
|
|
|
|
Token: "1",
|
|
|
|
Role: "1",
|
|
|
|
AllowUnauthenticated: &trueValue,
|
|
|
|
TaskTokenTTL: "1",
|
|
|
|
Addr: "1",
|
|
|
|
TLSCaFile: "1",
|
|
|
|
TLSCaPath: "1",
|
|
|
|
TLSCertFile: "1",
|
|
|
|
TLSKeyFile: "1",
|
|
|
|
TLSSkipVerify: &trueValue,
|
|
|
|
TLSServerName: "1",
|
|
|
|
}
|
|
|
|
|
|
|
|
require.True(c1.IsEqual(c2))
|
|
|
|
|
|
|
|
c3 := &VaultConfig{
|
|
|
|
Enabled: &trueValue,
|
|
|
|
Token: "1",
|
|
|
|
Role: "1",
|
|
|
|
AllowUnauthenticated: &trueValue,
|
|
|
|
TaskTokenTTL: "1",
|
|
|
|
Addr: "1",
|
|
|
|
TLSCaFile: "1",
|
|
|
|
TLSCaPath: "1",
|
|
|
|
TLSCertFile: "1",
|
|
|
|
TLSKeyFile: "1",
|
|
|
|
TLSSkipVerify: &trueValue,
|
|
|
|
TLSServerName: "1",
|
|
|
|
}
|
|
|
|
|
|
|
|
c4 := &VaultConfig{
|
|
|
|
Enabled: &falseValue,
|
|
|
|
Token: "1",
|
|
|
|
Role: "1",
|
|
|
|
AllowUnauthenticated: &trueValue,
|
|
|
|
TaskTokenTTL: "1",
|
|
|
|
Addr: "1",
|
|
|
|
TLSCaFile: "1",
|
|
|
|
TLSCaPath: "1",
|
|
|
|
TLSCertFile: "1",
|
|
|
|
TLSKeyFile: "1",
|
|
|
|
TLSSkipVerify: &trueValue,
|
|
|
|
TLSServerName: "1",
|
|
|
|
}
|
|
|
|
require.False(c3.IsEqual(c4))
|
|
|
|
}
|