From 0f724aeb5367e367f786b424e8b9cbdcc559dbec Mon Sep 17 00:00:00 2001 From: Rafid Bin Mostofa Date: Wed, 14 Feb 2024 16:55:33 +0600 Subject: [PATCH] refactor: add pkg and slice name expression string Add pkg and slice name expression string variables to remove duplication and increase test coverage. --- internal/setup/setup.go | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/internal/setup/setup.go b/internal/setup/setup.go index b3faa492..23079796 100644 --- a/internal/setup/setup.go +++ b/internal/setup/setup.go @@ -242,14 +242,17 @@ func order(pkgs map[string]*Package, keys []SliceKey) ([]SliceKey, error) { return order, nil } +var pkgNameExpStr = `([a-z0-9](?:-?[.a-z0-9+]){1,})` +var sliceNameExpStr = `([a-z](?:-?[a-z0-9]){2,})` + // fnameExp matches the slice definition file basename. -var fnameExp = regexp.MustCompile(`^([a-z0-9](?:-?[.a-z0-9+]){1,})\.yaml$`) +var fnameExp = regexp.MustCompile(`^` + pkgNameExpStr + `\.yaml$`) // snameExp matches only the slice name, without the leading package name. -var snameExp = regexp.MustCompile(`^([a-z](?:-?[a-z0-9]){2,})$`) +var snameExp = regexp.MustCompile(`^` + sliceNameExpStr + `$`) // knameExp matches the slice full name in pkg_slice format. -var knameExp = regexp.MustCompile(`^([a-z0-9](?:-?[.a-z0-9+]){1,})_([a-z](?:-?[a-z0-9]){2,})$`) +var knameExp = regexp.MustCompile(`^` + pkgNameExpStr + `_` + sliceNameExpStr + `$`) func ParseSliceKey(sliceKey string) (SliceKey, error) { match := knameExp.FindStringSubmatch(sliceKey)