INNER CODE UNIT · Go
func
rulego/rulego · endpoint/deferred_reload_test.go:19
func (e *deferredStubEndpoint) Type() string { return "deferredStub" }
func (e *deferredStubEndpoint) Id() string { return "ep_deferred_reload" }
func (e *deferredStubEndpoint) New() types.Node {
return &deferredStubEndpoint{}
}
func (e *deferredStubEndpoint) Init(_ types.Config, _ types.Configuration) error { return nil }
func (e *deferredStubEndpoint) AddRouter(_ endpointApi.Router, _ ...interface{}) (string, error) {
atomic.AddInt64(&deferredStubAddRouterCount, 1)
return "1", nil
}
func (e *deferredStubEndpoint) RemoveRouter(_ string, _ ...interface{}) error { return nil }
func (e *deferredStubEndpoint) Start() error { return nil }
// 链上部署的 endpoint 首次由部署方 ApplyRouters 挂路由;之后走配置变更重启型
// 重载时必须自行把路由挂回去,否则端点以零路由重启。
func TestApplyRoutersThenRestartReloadKeepsRouters(t *testing.T) {
_ = Registry.Register(&deferredStubEndpoint{})