Attempt at fixing status validation

Our validation tests are A-OK, but inputs are not :(
This commit is contained in:
Jack Boswell (boswelja)
2022-09-26 15:37:05 +13:00
parent 99b7a1e1d4
commit 4d510d380a
4 changed files with 7 additions and 12 deletions

File diff suppressed because one or more lines are too long

View File

@@ -124,17 +124,12 @@ async function validateSelectedTrack(appEditId: string, options: EditOptions): P
async function addReleasesToTrack(appEditId: string, options: EditOptions, versionCodes: number[]): Promise<Track> {
const status = options.status
let userFraction: number | undefined = undefined
if (options.status != 'draft') {
userFraction = options.userFraction
}
core.debug(`Creating release for:`);
core.debug(`edit=${appEditId}`)
core.debug(`track=${options.track}`)
if (userFraction) {
core.debug(`userFraction=${userFraction}`)
if (options.userFraction) {
core.debug(`userFraction=${options.userFraction}`)
}
core.debug(`status=${status}`)
core.debug(`versionCodes=${versionCodes.toString()}`)
@@ -150,7 +145,7 @@ async function addReleasesToTrack(appEditId: string, options: EditOptions, versi
releases: [
{
name: options.name,
userFraction: userFraction,
userFraction: options.userFraction,
status: status,
inAppUpdatePriority: options.inAppUpdatePriority,
releaseNotes: await readLocalizedReleaseNotes(options.whatsNewDir),

View File

@@ -23,7 +23,7 @@ export async function validateStatus(status: string | undefined, hasUserFraction
case 'completed':
case 'draft':
if (hasUserFraction) {
return Promise.reject(new Error(`Status 'completed' does not support 'userFraction'`))
return Promise.reject(new Error(`Status '${status}' does not support 'userFraction'`))
}
break
case 'halted':

View File

@@ -34,7 +34,7 @@ async function run() {
// Validate user fraction
let userFractionFloat: number | undefined
if (userFraction) {
if (userFraction != undefined) {
userFractionFloat = parseFloat(userFraction)
} else {
userFractionFloat = undefined
@@ -42,7 +42,7 @@ async function run() {
await validateUserFraction(userFractionFloat)
// Validate release status
await validateStatus(status, userFraction != undefined)
await validateStatus(status, userFractionFloat != undefined && !isNaN(userFractionFloat))
// Validate the inAppUpdatePriority to be a valid number in within [0, 5]
let inAppUpdatePriorityInt: number | undefined