-
Notifications
You must be signed in to change notification settings - Fork 76
/
testdata_envs.go
108 lines (89 loc) · 3.14 KB
/
testdata_envs.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
package sharedtest
import (
"time"
"github.com/launchdarkly/ld-relay/v8/internal/credential"
"github.com/launchdarkly/ld-relay/v8/config"
ct "github.com/launchdarkly/go-configtypes"
"github.com/launchdarkly/go-sdk-common/v3/ldtime"
)
type TestEnv struct {
Name string
Config config.EnvConfig
ProjName string
ProjKey string
EnvName string
EnvKey string
ExpiringSDKKey config.SDKKey
ExpiringSDKKeyTime ldtime.UnixMillisecondTime
}
type UnsupportedSDKCredential struct{} // implements credential.SDKCredential
func (k UnsupportedSDKCredential) Compare(_ credential.AutoConfig) (credential.SDKCredential, credential.Status) {
return nil, credential.Unchanged
}
func (k UnsupportedSDKCredential) GetAuthorizationHeaderValue() string { return "" }
func (k UnsupportedSDKCredential) Defined() bool {
return true
}
func (k UnsupportedSDKCredential) String() string {
return "unsupported"
}
const (
// The "undefined" values are well-formed, but do not match any environment in our test data.
UndefinedSDKKey = config.SDKKey("sdk-99999999-9999-4999-8999-999999999999")
UndefinedMobileKey = config.MobileKey("mob-99999999-9999-4999-8999-999999999999")
UndefinedEnvID = config.EnvironmentID("999999999999999999999999")
// The "malformed" values contain an unsupported authorization scheme.
MalformedSDKKey = config.SDKKey("fake_key sdk-99999999-9999-4999-8999-999999999999")
MalformedMobileKey = config.MobileKey("fake_key mob-99999999-9999-4999-8999-999999999999")
)
var EnvMain = TestEnv{
Name: "ProjectName ServerSideEnv",
Config: config.EnvConfig{
SDKKey: config.SDKKey("sdk-98e2b0b4-2688-4a59-9810-1e0e3d7e42d0"),
},
}
var EnvWithTTL = TestEnv{
Name: "ProjectName ServerSideEnvWithTTL",
Config: config.EnvConfig{
SDKKey: config.SDKKey("sdk-98e2b0b4-2688-4a59-9810-1e0e3d7e42d5"),
TTL: ct.NewOptDuration(10 * time.Minute),
},
}
var EnvMobile = TestEnv{
Name: "ProjectName MobileEnv",
Config: config.EnvConfig{
SDKKey: config.SDKKey("sdk-98e2b0b4-2688-4a59-9810-1e0e3d7e42d2"),
MobileKey: config.MobileKey("mob-98e2b0b4-2688-4a59-9810-1e0e3d7e42db"),
},
}
var EnvClientSide = TestEnv{
Name: "ProjectName JSClientSideEnv",
Config: config.EnvConfig{
SDKKey: config.SDKKey("sdk-98e2b0b4-2688-4a59-9810-1e0e3d7e42d1"),
EnvID: config.EnvironmentID("507f1f77bcf86cd799439011"),
},
}
var EnvClientSideSecureMode = TestEnv{
Name: "ProjectName JSClientSideSecureModeEnv",
Config: config.EnvConfig{
SDKKey: config.SDKKey("sdk-98e2b0b4-2688-4a59-9810-1e0e3d7e42d9"),
EnvID: config.EnvironmentID("507f1f77bcf86cd799439019"),
SecureMode: true,
},
}
var EnvWithAllCredentials = TestEnv{
Name: "ProjectName EnvWithAllCredentials",
Config: config.EnvConfig{
SDKKey: config.SDKKey("sdk-98e2b0b4-2688-4a59-9810-2e1e4d8e52e9"),
MobileKey: config.MobileKey("mob-98e2b0b4-2688-4a59-9810-1e0e3d7e42ec"),
EnvID: config.EnvironmentID("507f1f77bcf86cd79943902a"),
},
}
func MakeEnvConfigs(envs ...TestEnv) map[string]*config.EnvConfig {
ret := make(map[string]*config.EnvConfig)
for _, e := range envs {
c := e.Config
ret[e.Name] = &c
}
return ret
}