* refactor(JenkinsTests): finished core refactor to new service model * refactor(JenkinsTests): more updates * refactor(JenkinsCoverage): minor refactor to leverage new common Jenkins content * refactor(JenkinsBuild): update redirector to include shorthand alias * chore: apply suggestion on jenkins-tests.service.js Co-Authored-By: calebcartwright <calebcartwright@users.noreply.github.com> * refactor(JenkinsTests): rename test helpers * chore: cleanup JenkinsCoverage redirector * chore: cleanup JenkinsBuild redirector * chore: cleanup test docs
34 lines
727 B
JavaScript
34 lines
727 B
JavaScript
'use strict'
|
|
|
|
const Joi = require('joi').extend(require('joi-extension-semver'))
|
|
|
|
const optionalNonNegativeInteger = Joi.number()
|
|
.integer()
|
|
.min(0)
|
|
|
|
module.exports = {
|
|
optionalNonNegativeInteger,
|
|
|
|
nonNegativeInteger: optionalNonNegativeInteger.required(),
|
|
|
|
anyInteger: Joi.number()
|
|
.integer()
|
|
.required(),
|
|
|
|
semver: Joi.semver()
|
|
.valid()
|
|
.required(),
|
|
|
|
semverRange: Joi.semver()
|
|
.validRange()
|
|
.required(),
|
|
|
|
optionalDottedVersionNClausesWithOptionalSuffix: Joi.string().regex(
|
|
/^\d+(\.\d+)*([-+].*)?$/
|
|
),
|
|
|
|
// TODO This accepts URLs with query strings and fragments, which for some
|
|
// purposes should be rejected.
|
|
optionalUrl: Joi.string().uri({ scheme: ['http', 'https'] }),
|
|
}
|