mirror of
https://github.com/gitpod-io/gitpod.git
synced 2025-12-08 17:36:30 +00:00
65 lines
1.5 KiB
Go
65 lines
1.5 KiB
Go
// Copyright (c) 2022 Gitpod GmbH. All rights reserved.
|
|
// Licensed under the MIT License. See License-MIT.txt in the project root for license information.
|
|
|
|
package usage
|
|
|
|
import (
|
|
"testing"
|
|
"time"
|
|
|
|
"github.com/gitpod-io/gitpod/installer/pkg/config/v1/experimental"
|
|
"github.com/stretchr/testify/require"
|
|
corev1 "k8s.io/api/core/v1"
|
|
)
|
|
|
|
func TestConfigMap_ContainsSchedule(t *testing.T) {
|
|
ctx := renderContextWithUsageConfig(t, &experimental.UsageConfig{Enabled: true, Schedule: "2m"})
|
|
|
|
objs, err := configmap(ctx)
|
|
require.NoError(t, err)
|
|
|
|
cfgmap, ok := objs[0].(*corev1.ConfigMap)
|
|
require.True(t, ok)
|
|
|
|
require.JSONEq(t,
|
|
`{
|
|
"controllerSchedule": "2m",
|
|
"stripeCredentialsFile": "stripe-secret/apikeys",
|
|
"server": {
|
|
"services": {
|
|
"grpc": {
|
|
"address": ":9001"
|
|
}
|
|
}
|
|
}
|
|
}`,
|
|
cfgmap.Data[configJSONFilename],
|
|
)
|
|
}
|
|
|
|
func TestConfigMap_ContainsBillInstancesAfter(t *testing.T) {
|
|
afterTime := time.Date(2022, 8, 4, 0, 0, 0, 0, time.UTC)
|
|
ctx := renderContextWithUsageConfig(t, &experimental.UsageConfig{Enabled: true, BillInstancesAfter: &afterTime})
|
|
|
|
objs, err := configmap(ctx)
|
|
require.NoError(t, err)
|
|
|
|
cfgmap, ok := objs[0].(*corev1.ConfigMap)
|
|
require.True(t, ok)
|
|
|
|
require.JSONEq(t,
|
|
`{
|
|
"billInstancesAfter": "2022-08-04T00:00:00Z",
|
|
"stripeCredentialsFile": "stripe-secret/apikeys",
|
|
"server": {
|
|
"services": {
|
|
"grpc": {
|
|
"address": ":9001"
|
|
}
|
|
}
|
|
}
|
|
}`,
|
|
cfgmap.Data[configJSONFilename],
|
|
)
|
|
}
|