mirror of https://github.com/status-im/consul.git
proxycfg: Add a test to show the bug
When a token is not provided at registration, the agent token is not being used.
This commit is contained in:
parent
3bae53a989
commit
b313f495b8
|
@ -557,3 +557,48 @@ func testGenCacheKey(req cache.Request) string {
|
|||
info := req.CacheInfo()
|
||||
return path.Join(info.Key, info.Datacenter)
|
||||
}
|
||||
|
||||
func TestManager_SyncState_DefaultToken(t *testing.T) {
|
||||
types := NewTestCacheTypes(t)
|
||||
c := TestCacheWithTypes(t, types)
|
||||
logger := testutil.Logger(t)
|
||||
tokens := new(token.Store)
|
||||
tokens.UpdateUserToken("default-token", token.TokenSourceConfig)
|
||||
|
||||
state := local.NewState(local.Config{}, logger, tokens)
|
||||
state.TriggerSyncChanges = func() {}
|
||||
|
||||
m, err := NewManager(ManagerConfig{
|
||||
Cache: c,
|
||||
Health: &health.Client{Cache: c, CacheName: cachetype.HealthServicesName},
|
||||
State: state,
|
||||
// TODO: Tokens: tokens,
|
||||
Source: &structs.QuerySource{Datacenter: "dc1"},
|
||||
Logger: logger,
|
||||
})
|
||||
require.NoError(t, err)
|
||||
defer m.Close()
|
||||
|
||||
srv := &structs.NodeService{
|
||||
Kind: structs.ServiceKindConnectProxy,
|
||||
ID: "web-sidecar-proxy",
|
||||
Service: "web-sidecar-proxy",
|
||||
Port: 9999,
|
||||
Meta: map[string]string{},
|
||||
Proxy: structs.ConnectProxyConfig{
|
||||
DestinationServiceID: "web",
|
||||
DestinationServiceName: "web",
|
||||
LocalServiceAddress: "127.0.0.1",
|
||||
LocalServicePort: 8080,
|
||||
Config: map[string]interface{}{
|
||||
"foo": "bar",
|
||||
},
|
||||
},
|
||||
}
|
||||
|
||||
err = state.AddServiceWithChecks(srv, nil, "")
|
||||
require.NoError(t, err)
|
||||
m.syncState()
|
||||
|
||||
require.Equal(t, "default-token", m.proxies[srv.CompoundServiceID()].serviceInstance.token)
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue