Files
bl/common/utils/event/test_scenarios/fire-and-forget/users/service.go
昔念 cd7583ba05 test(utils): 添加事件驱动模型测试
- 在 sqrt_test.go 中添加了 fastSqr1 测试函数,用于测试事件驱动模型
- 新增了 Event 和 Uint32AsyncEvent 类型用于测试
- 更新了 go.work、go.mod 和
2025-08-05 16:10:18 +08:00

26 lines
531 B
Go

package users
import (
"context"
"strings"
"github.com/badu/bus"
"github.com/badu/bus/test_scenarios/fire-and-forget/events"
)
type ServiceImpl struct {
sb *strings.Builder
c int
}
func NewService(sb *strings.Builder) ServiceImpl {
result := ServiceImpl{sb: sb}
return result
}
func (s *ServiceImpl) RegisterUser(ctx context.Context, name, phone string) {
s.c++
bus.Pub(events.UserRegisteredEvent{UserName: name, Phone: phone})
bus.Pub(&events.DummyEvent{AlteredAsync: s.c%2 == 0}) // nobody listens on this one
}