mirror of
https://github.com/Rain-kl/OpenFlare.git
synced 2026-10-08 00:26:37 +08:00
chore(cordis): sync Wavelet core/pkg/plugins after W1-W9
This commit is contained in:
@@ -0,0 +1,54 @@
|
||||
// Copyright 2026 Arctel.net
|
||||
// SPDX-License-Identifier: Apache-2.0
|
||||
|
||||
package message_gateway_test
|
||||
|
||||
import (
|
||||
"Wavelet/core"
|
||||
"Wavelet/core/contracts"
|
||||
"Wavelet/plugins/domain/message_gateway"
|
||||
"Wavelet/plugins/domain/message_gateway/service"
|
||||
"context"
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
"github.com/stretchr/testify/require"
|
||||
)
|
||||
|
||||
func TestPushRegistry(t *testing.T) {
|
||||
ctx := core.NewContext(context.Background())
|
||||
require.NoError(t, message_gateway.New().Apply(ctx))
|
||||
|
||||
registry, err := core.Inject[contracts.PushRegistry](ctx)
|
||||
require.NoError(t, err)
|
||||
require.NotNil(t, registry)
|
||||
|
||||
const key = "test.push_registry.probe"
|
||||
registry.RegisterBuiltInEvent(contracts.PushEventMeta{
|
||||
Key: key,
|
||||
Name: "Push Registry Probe",
|
||||
Description: "observability probe for contracts.PushRegistry",
|
||||
DefaultTemplate: contracts.PushNotificationTemplate{
|
||||
Title: "Probe Title",
|
||||
Content: "Probe Content",
|
||||
Level: "INFO",
|
||||
Ext: map[string]any{"source": "test"},
|
||||
},
|
||||
})
|
||||
|
||||
found := false
|
||||
for _, ev := range service.GetBuiltInEvents() {
|
||||
if ev.Key != key {
|
||||
continue
|
||||
}
|
||||
found = true
|
||||
assert.Equal(t, "Push Registry Probe", ev.Name)
|
||||
assert.Equal(t, "observability probe for contracts.PushRegistry", ev.Description)
|
||||
assert.Equal(t, "Probe Title", ev.DefaultTemplate.Title)
|
||||
assert.Equal(t, "Probe Content", ev.DefaultTemplate.Content)
|
||||
assert.Equal(t, "INFO", ev.DefaultTemplate.Level)
|
||||
assert.Equal(t, map[string]any{"source": "test"}, ev.DefaultTemplate.Ext)
|
||||
break
|
||||
}
|
||||
require.True(t, found, "registered key %q should be visible via GetBuiltInEvents", key)
|
||||
}
|
||||
Reference in New Issue
Block a user