@@ -110,19 +110,69 @@ describe 'semver_ge'
110110 assert $? 0
111111
112112describe ' regex_match'
113- regex_match ' 1.2.3 - 5.6.7' ' (.*) - (.*)'
114- assert $? 0
115- assert " $REGEX_MATCHED_GROUP_0 " " 1.2.3 - 5.6.7"
116- assert " $REGEX_MATCHED_GROUP_1 " " 1.2.3"
117- assert " $REGEX_MATCHED_GROUP_2 " " 5.6.7"
118- assert " $REGEX_MATCHED_GROUP_3 " " "
113+ regex_match " 1.22.333 - 1.2.3-3.2.1-7.8.0-abc-def+1.2.3" " $RE_VER - $RE_VER "
114+ assert $? 0 " Exit code should be 0 when match"
115+ assert " $MATCHED_VER_1 " " 1.22.333" " Should set MATCHED_VER_1"
116+ assert " $MATCHED_VER_2 " " 1.2.3-3.2.1-7.8.0-abc-def+1.2.3" " Should set MATCHED_VER_2"
117+ assert " $MATCHED_NUM_1 " " 1.22.333" " Should set MATCHED_NUM_1"
118+ assert " $MATCHED_NUM_2 " " 1.2.3" " Should set MATCHED_NUM_2"
119+ assert " $MATCHED_LAB_1 " " " " Should set MATCHED_LAB_1"
120+ assert " $MATCHED_LAB_2 " " 3.2.1-7.8.0-abc-def" " Should set MATCHED_LAB_2"
119121
120122 regex_match ' 1.2.3 - 5.6.7' ' 5.6.7'
121- assert $? 1
122- assert " $REGEX_MATCHED_GROUP_0 " " "
123- assert " $REGEX_MATCHED_GROUP_1 " " "
124- assert " $REGEX_MATCHED_GROUP_2 " " "
125- assert " $REGEX_MATCHED_GROUP_3 " " "
123+ assert $? 1 " Exit code should be 1 when don't match"
124+ assert " $MATCHED_VER_1 " " " " When don't match MATCHED_VER_x should be empty"
125+ assert " $MATCHED_VER_1 " " " " When don't match MATCHED_NUM_x should be empty"
126+ assert " $MATCHED_LAB_1 " " " " When don't match MATCHED_LAB_x should be empty"
127+
128+ describe ' reslove_rule'
129+ RET=$( resolve_rule ' 1.2.3' )
130+ assert " $RET " " specific 1.2.3" " Specific (1.2.3)"
131+
132+ RET=$( resolve_rule ' 1' )
133+ assert " $RET " " specific 1" " Specific (1)"
134+
135+ RET=$( resolve_rule ' 1.2.3-a.2-c' )
136+ assert " $RET " " specific 1.2.3-a.2-c" " Specific (1.2.3-a.2-c)"
137+
138+ RET=$( resolve_rule ' >1.2.3' )
139+ assert " $RET " " gt 1.2.3" " Greater than (>1.2.3)"
140+
141+ RET=$( resolve_rule ' <1.2.3' )
142+ assert " $RET " " lt 1.2.3" " Less than (<1.2.3)"
143+
144+ RET=$( resolve_rule ' >=1.2.3' )
145+ assert " $RET " " ge 1.2.3" " Greater than or equal to (>=1.2.3)"
146+
147+ RET=$( resolve_rule ' <=1.2.3' )
148+ assert " $RET " " le 1.2.3" " Less than or equal to (<=1.2.3)"
149+
150+ RET=$( resolve_rule ' 1.2.3 - 4.5.6' )
151+ assert " $RET " " ge_le 1.2.3 4.5.6" " Range (1.2.3 - 4.5.6)"
152+
153+ RET=$( resolve_rule ' >1.2.3 <4.5.6' )
154+ assert " $RET " " gt_lt 1.2.3 4.5.6" " Range (>1.2.3 <4.5.6)"
155+
156+ RET=$( resolve_rule ' >1.2.3 <=4.5.6' )
157+ assert " $RET " " gt_le 1.2.3 4.5.6" " Range (>1.2.3 <=4.5.6)"
158+
159+ RET=$( resolve_rule ' >=1.2.3 <4.5.6' )
160+ assert " $RET " " ge_lt 1.2.3 4.5.6" " Range (>=1.2.3 <4.5.6)"
161+
162+ RET=$( resolve_rule ' >=1.2.3 <=4.5.6' )
163+ assert " $RET " " ge_le 1.2.3 4.5.6" " Range (>=1.2.3 <=4.5.6)"
164+
165+ RET=$( resolve_rule ' ~1.2.3' )
166+ assert " $RET " " tilde 1.2.3" " Tilde (~1.2.3)"
167+
168+ RET=$( resolve_rule ' 1.2.x' )
169+ assert " $RET " " tilde 1.2" " Wildcard (1.2.x)"
170+
171+ RET=$( resolve_rule ' 1.*' )
172+ assert " $RET " " tilde 1" " Wildcard (1.*)"
173+
174+ RET=$( resolve_rule ' ^1.2.3' )
175+ assert " $RET " " caret 1.2.3" " Caret (^1.2.3)"
126176
127177
128178# Summary
0 commit comments