Files
OpenFlare/pkg/task/meta_test.go
T
ryan fb6a3edb89 refactor(architecture): eliminate internal package and complete cordis single-owner model and repository migration
- Physically purged all legacy internal/ packages, centralized pkg/model/ and pkg/repository/
- Migrated domain models and database repositories into self-contained owner plugins (user, auth, message_gateway, admin, upload, risk_control)
- Decoupled cross-plugin interactions via pure core/contracts and typed EventBus
- Ensured 100% test coverage pass, zero data races (-race clean), and 0 lint issues in make code-check
2026-08-28 08:40:43 +08:00

36 lines
746 B
Go

// Copyright 2026 Arctel.net
// SPDX-License-Identifier: Apache-2.0
package task_test
import (
"testing"
"github.com/Rain-kl/Wavelet/pkg/task"
)
func TestDuplicateTaskMeta(t *testing.T) {
dummyMeta := task.TaskMeta{
Type: "test_duplicate_task",
AsynqTask: "test:duplicate_task",
Name: "Test Duplicate Task",
}
task.RegisterTaskMeta(dummyMeta)
task.RegisterTaskMeta(dummyMeta)
metas := task.GetDispatchableTasks()
// Check if we have duplicates by checking if a Type appears more than once
seen := make(map[string]int)
for _, m := range metas {
seen[m.Type]++
}
for taskType, count := range seen {
if count > 1 {
t.Errorf("Task type %q registered %d times, expected at most 1", taskType, count)
}
}
}