From 83a89127fdad6f551551b741c1a6967f13a02e8a Mon Sep 17 00:00:00 2001 From: ᴜɴᴋɴᴡᴏɴ Date: Sat, 26 Sep 2020 16:23:05 +0800 Subject: action: fix issue reference regexp and error handling (#6352) --- internal/db/action_test.go | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 internal/db/action_test.go (limited to 'internal/db/action_test.go') diff --git a/internal/db/action_test.go b/internal/db/action_test.go new file mode 100644 index 00000000..afd750bb --- /dev/null +++ b/internal/db/action_test.go @@ -0,0 +1,41 @@ +// Copyright 2020 The Gogs Authors. All rights reserved. +// Use of this source code is governed by a MIT-style +// license that can be found in the LICENSE file. + +package db + +import ( + "testing" + + "github.com/stretchr/testify/assert" +) + +func Test_issueReferencePattern(t *testing.T) { + tests := []struct { + name string + message string + expStrings []string + }{ + { + name: "no match", + message: "Hello world!", + expStrings: nil, + }, + { + name: "contains issue numbers", + message: "#123 is fixed, and #456 is WIP", + expStrings: []string{"#123", " #456"}, + }, + { + name: "contains full issue references", + message: "#123 is fixed, and user/repo#456 is WIP", + expStrings: []string{"#123", " user/repo#456"}, + }, + } + for _, test := range tests { + t.Run(test.name, func(t *testing.T) { + strs := issueReferencePattern.FindAllString(test.message, -1) + assert.Equal(t, test.expStrings, strs) + }) + } +} -- cgit v1.2.3