summaryrefslogtreecommitdiff
path: root/teleirc/matterbridge/bridge/discord/helpers_test.go
diff options
context:
space:
mode:
authorMistivia <i@mistivia.com>2025-11-02 15:27:18 +0800
committerMistivia <i@mistivia.com>2025-11-02 15:27:18 +0800
commite9c24f4af7ed56760f6db7941827d09f6db9020b (patch)
tree62128c43b883ce5e3148113350978755779bb5de /teleirc/matterbridge/bridge/discord/helpers_test.go
parent58d5e7cfda4781d8a57ec52aefd02983835c301a (diff)
add matterbridge
Diffstat (limited to 'teleirc/matterbridge/bridge/discord/helpers_test.go')
-rw-r--r--teleirc/matterbridge/bridge/discord/helpers_test.go46
1 files changed, 46 insertions, 0 deletions
diff --git a/teleirc/matterbridge/bridge/discord/helpers_test.go b/teleirc/matterbridge/bridge/discord/helpers_test.go
new file mode 100644
index 0000000..0f196d9
--- /dev/null
+++ b/teleirc/matterbridge/bridge/discord/helpers_test.go
@@ -0,0 +1,46 @@
+package bdiscord
+
+import (
+ "testing"
+
+ "github.com/stretchr/testify/assert"
+)
+
+func TestEnumerateUsernames(t *testing.T) {
+ testcases := map[string]struct {
+ match string
+ expectedUsernames []string
+ }{
+ "only space": {
+ match: " \t\n \t",
+ expectedUsernames: nil,
+ },
+ "single word": {
+ match: "veni",
+ expectedUsernames: []string{"veni"},
+ },
+ "single word with preceeding space": {
+ match: " vidi",
+ expectedUsernames: []string{" vidi"},
+ },
+ "single word with suffixed space": {
+ match: "vici ",
+ expectedUsernames: []string{"vici"},
+ },
+ "multi-word with varying whitespace": {
+ match: "just me and\tmy friends \t",
+ expectedUsernames: []string{
+ "just",
+ "just me",
+ "just me and",
+ "just me and\tmy",
+ "just me and\tmy friends",
+ },
+ },
+ }
+
+ for testname, testcase := range testcases {
+ foundUsernames := enumerateUsernames(testcase.match)
+ assert.Equalf(t, testcase.expectedUsernames, foundUsernames, "Should have found the expected usernames for testcase %s", testname)
+ }
+}