From 5c55db489f030f51f31deb4816aa4a6a8884d397 Mon Sep 17 00:00:00 2001 From: Jakub Al-Khalili Date: Wed, 14 Aug 2019 09:51:55 +0200 Subject: [PATCH] #72 Add support for plugin names with underscore --- pkg/controller/jenkins/plugins/plugin.go | 2 +- pkg/controller/jenkins/plugins/plugin_test.go | 12 ++++++++++++ 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/pkg/controller/jenkins/plugins/plugin.go b/pkg/controller/jenkins/plugins/plugin.go index 2fcc8c3c..75ed6138 100644 --- a/pkg/controller/jenkins/plugins/plugin.go +++ b/pkg/controller/jenkins/plugins/plugin.go @@ -22,7 +22,7 @@ func (p Plugin) String() string { } var ( - namePattern = regexp.MustCompile(`^[0-9a-z-]+$`) + namePattern = regexp.MustCompile(`^[0-9a-z-_]+$`) versionPattern = regexp.MustCompile(`^[0-9\\.]+$`) ) diff --git a/pkg/controller/jenkins/plugins/plugin_test.go b/pkg/controller/jenkins/plugins/plugin_test.go index 0809acc5..4074a03e 100644 --- a/pkg/controller/jenkins/plugins/plugin_test.go +++ b/pkg/controller/jenkins/plugins/plugin_test.go @@ -32,6 +32,18 @@ func TestVerifyDependencies(t *testing.T) { got := VerifyDependencies(basePlugins) assert.Equal(t, true, got) }) + t.Run("happy, two plugin names with names with underscores", func(t *testing.T) { + basePlugins := map[Plugin][]Plugin{ + Must(New("first_root_plugin:1.0.0")): { + Must(New("first_plugin:0.0.1")), + }, + Must(New("second_root_plugin:1.0.0")): { + Must(New("first_plugin:0.0.1")), + }, + } + got := VerifyDependencies(basePlugins) + assert.Equal(t, true, got) + }) t.Run("fail, two root plugins have different versions", func(t *testing.T) { basePlugins := map[Plugin][]Plugin{ Must(New("first-root-plugin:1.0.0")): {