File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -8,15 +8,29 @@ ARGS=()
88while [[ $# -gt 0 ]]; do
99 case " $1 " in
1010 --json) JSON_MODE=true; shift ;;
11- --feature-num) FEATURE_NUM_OVERRIDE=" $2 " ; shift 2 ;;
12- --help|-h) echo " Usage: $0 [--json] [--feature-num NUMBER] <feature_description>" ; exit 0 ;;
11+ --feature-num)
12+ if [[ -z " $2 " || " $2 " =~ ^- ]]; then
13+ echo " Error: --feature-num requires a number (1-999)" >&2
14+ exit 1
15+ fi
16+ if ! [[ " $2 " =~ ^[0-9]+$ ]]; then
17+ echo " Error: --feature-num must be a positive integer" >&2
18+ exit 1
19+ fi
20+ if [[ " $2 " -lt 1 || " $2 " -gt 999 ]]; then
21+ echo " Error: --feature-num must be between 1 and 999" >&2
22+ exit 1
23+ fi
24+ FEATURE_NUM_OVERRIDE=" $2 "
25+ shift 2 ;;
26+ --help|-h) echo " Usage: $0 [--json] [--feature-num NUMBER(1-999)] <feature_description>" ; exit 0 ;;
1327 * ) ARGS+=(" $1 " ); shift ;;
1428 esac
1529done
1630
1731FEATURE_DESCRIPTION=" ${ARGS[*]} "
1832if [ -z " $FEATURE_DESCRIPTION " ]; then
19- echo " Usage: $0 [--json] [--feature-num NUMBER] <feature_description>" >&2
33+ echo " Usage: $0 [--json] [--feature-num NUMBER(1-999) ] <feature_description>" >&2
2034 exit 1
2135fi
2236
Original file line number Diff line number Diff line change 33[CmdletBinding ()]
44param (
55 [switch ]$Json ,
6+ [ValidateRange (1 , 999 )]
67 [int ]$FeatureNum = 0 ,
78 [Parameter (ValueFromRemainingArguments = $true )]
89 [string []]$FeatureDescription
910)
1011$ErrorActionPreference = ' Stop'
1112
1213if (-not $FeatureDescription -or $FeatureDescription.Count -eq 0 ) {
13- Write-Error " Usage: ./create-new-feature.ps1 [-Json] [-FeatureNum NUMBER] <feature description>" ; exit 1
14+ Write-Error " Usage: ./create-new-feature.ps1 [-Json] [-FeatureNum NUMBER(1-999) ] <feature description>" ; exit 1
1415}
1516$featureDesc = ($FeatureDescription -join ' ' ).Trim()
1617
You can’t perform that action at this time.
0 commit comments