[Nexus] 3: set prerelease=false for /r/* badges (#4659)

* Add a test for #4640

* Set prerelease=false for /r/* Nexus 3 badges

* Fix the test following PR discussion

Co-authored-by: Pierre-Yves B. <PyvesDev@gmail.com>
This commit is contained in:
nigredo-tori
2020-02-16 19:44:40 +07:00
committed by GitHub
parent 8f094a760b
commit ddfcd80ddb
2 changed files with 24 additions and 5 deletions

View File

@@ -48,7 +48,7 @@ const nexus2ResolveApiSchema = Joi.object({
const queryParamSchema = Joi.object({
server: optionalUrl.required(),
queryOpt: Joi.string()
.regex(/(:[\w.]+=[\w-. ]+)+/i)
.regex(/(:[\w.]+=[^:]*)+/i)
.optional(),
nexusVersion: Joi.equal('2', '3'),
}).required()
@@ -240,10 +240,17 @@ module.exports = class Nexus extends BaseJsonService {
name: artifactId,
sort: 'version',
}
if (repo === 's') {
qs.prerelease = 'true'
} else if (repo !== 'r') {
qs.repository = repo
switch (repo) {
case 's':
qs.prerelease = 'true'
break
case 'r':
qs.prerelease = 'false'
break
default:
qs.repository = repo
break
}
if (queryOpt) {

View File

@@ -281,3 +281,15 @@ t.create('Nexus 3 - repository version with query')
label: 'nexus',
message: isVersion,
})
t.create('Nexus 3 - search release version without snapshots')
.get(
// Limit the version from above, so that any later artifacts don't break this test.
`/r/org.pentaho.adaptive/daemon.json?server=https://nexus.pentaho.org&nexusVersion=3&queryOpt=${encodeURIComponent(
':maven.baseVersion=<8.1.0.1'
)}`
)
.expectBadge({
label: 'nexus',
message: 'v8.1.0.0-365',
})