const { object, string, number, date } = require("yup");
const teamSchema = object({
jiraBoard: string()
.notRequired()
.url()
.matches(
/https:\/\/jira\.cvent\.com\/secure\/RapidBoard\.jspa\?rapidView=([0-9]{2,6})/,
{
message:
"Enter correct JIRA Board url in the form of https://jira.cvent.com/secure/RapidBoard.jspa?rapidView=<board-number>",
excludeEmptyString: true,
}
),
});
const validations = {
empty: await teamSchema.isValid({
jiraBoard: "",
}),
null: await teamSchema.isValid({
jiraBoard: null,
}),
undefined: await teamSchema.isValid({
jiraBoard: undefined,
}),
bad: await teamSchema.isValid({
jiraBoard: "bad",
}),
justUrl: await teamSchema.isValid({
jiraBoard: "http://jira.com",
}),
boardWithLetter: await teamSchema.isValid({
jiraBoard: "https://jira.cvent.com/secure/RapidBoard.jspa?rapidView=a",
}),
boardWithOneNumber: await teamSchema.isValid({
jiraBoard: "https://jira.cvent.com/secure/RapidBoard.jspa?rapidView=5",
}),
validBoard: await teamSchema.isValid({
jiraBoard: "https://jira.cvent.com/secure/RapidBoard.jspa?rapidView=55",
}),
};