Skip to content

Commit

Permalink
Merge pull request #186 from mattfarina/test-bug-fix
Browse files Browse the repository at this point in the history
Fixing issue where validation of constraint section gave false positives
  • Loading branch information
mattfarina committed Aug 15, 2022
2 parents 1959065 + ee95afb commit b8121eb
Show file tree
Hide file tree
Showing 3 changed files with 22 additions and 1 deletion.
7 changes: 6 additions & 1 deletion constraints.go
Expand Up @@ -180,8 +180,13 @@ func init() {
ops,
cvRegex))

// The first time a constraint shows up will look slightly different from
// future times it shows up due to a leading space or comma in a given
// string.
validConstraintRegex = regexp.MustCompile(fmt.Sprintf(
`^(\s*(%s)\s*(%s)\s*\,?)+$`,
`^(\s*(%s)\s*(%s)\s*)((?:\s+|,\s*)(%s)\s*(%s)\s*)*$`,
ops,
cvRegex,
ops,
cvRegex))
}
Expand Down
9 changes: 9 additions & 0 deletions constraints_test.go
Expand Up @@ -231,6 +231,15 @@ func TestNewConstraint(t *testing.T) {

// The 3 - 4 should be broken into 2 by the range rewriting
{"3 - 4 || => 3.0, < 4", 2, 2, false},

// Due to having 4 parts these should produce an error. See
// https://github.com/Masterminds/semver/issues/185 for the reason for
// these tests.
{"12.3.4.1234", 0, 0, true},
{"12.23.4.1234", 0, 0, true},
{"12.3.34.1234", 0, 0, true},
{"12.3.34 ~1.2.3", 1, 2, false},
{"12.3.34~ 1.2.3", 0, 0, true},
}

for _, tc := range tests {
Expand Down
7 changes: 7 additions & 0 deletions version_test.go
Expand Up @@ -87,6 +87,13 @@ func TestNewVersion(t *testing.T) {
{"1.2.2147483648", false},
{"1.2147483648.3", false},
{"2147483648.3.0", false},

// Due to having 4 parts these should produce an error. See
// https://github.com/Masterminds/semver/issues/185 for the reason for
// these tests.
{"12.3.4.1234", true},
{"12.23.4.1234", true},
{"12.3.34.1234", true},
}

for _, tc := range tests {
Expand Down

0 comments on commit b8121eb

Please sign in to comment.