fix #589 - allow pipe in constraint regexp

Signed-off-by: Chanwit Kaewkasi <chanwit@gmail.com>
This commit is contained in:
Chanwit Kaewkasi
2015-04-14 02:25:54 +07:00
parent ac4d776abb
commit 074b90c2a4
2 changed files with 2 additions and 2 deletions

View File

@@ -52,7 +52,7 @@ func parseExprs(key string, env []string) ([]expr, error) {
// allow leading = in case of using ==
// allow * for globbing
// allow regexp
matched, err := regexp.MatchString(`^(?i)[=!\/]?(~)?[a-z0-9:\-_\s\.\*/\(\)\?\+\[\]\\\^\$]+$`, parts[1])
matched, err := regexp.MatchString(`^(?i)[=!\/]?(~)?[a-z0-9:\-_\s\.\*/\(\)\?\+\[\]\\\^\$\|]+$`, parts[1])
if err != nil {
return nil, err
}

View File

@@ -32,7 +32,7 @@ func TestParseExprs(t *testing.T) {
assert.NoError(t, err)
// Allow regexp in value
_, err = parseExprs("constraint", []string{"constraint:node==/(?i)^[a-b]+c*$/"})
_, err = parseExprs("constraint", []string{"constraint:node==/(?i)^[a-b]+c*(n|b)$/"})
assert.NoError(t, err)
// Allow space in value