@@ -234,18 +234,26 @@ function testNoShitAsVersion()
234234 new SemVer \version ($ version );
235235 }
236236 }
237- function testPrerelease ()
237+
238+ function testVersionFunctions ()
238239 {
239240 $ t = array (
240- '1.0.0-alpha ' =>array ('alpha ' ),
241- '1.0.0-alpha.1 ' =>array ('alpha ' , '1 ' ),
242- '1.0.0-0.3.7 ' =>array ('0 ' , '3 ' , '7 ' ),
243- '1.0.0-x.7.z.92 ' =>array ('x ' , '7 ' , 'z ' , '92 ' ),
241+ '1.0.0-alpha ' => array ('M ' =>1 , 'm ' =>0 , 'p ' =>0 , 'pr ' =>array ('alpha ' ), 'b ' =>array ()),
242+ '1.0.0-alpha.1 ' => array ('M ' =>1 , 'm ' =>0 , 'p ' =>0 , 'pr ' =>array ('alpha ' , 1 ), 'b ' =>array ()),
243+ '1.0.0-0.3.7 ' => array ('M ' =>1 , 'm ' =>0 , 'p ' =>0 , 'pr ' =>array (0 , 3 , 7 ), 'b ' =>array ()),
244+ '1.0.0-x.7.z.92 ' => array ('M ' =>1 , 'm ' =>0 , 'p ' =>0 , 'pr ' =>array ('x ' , 7 , 'z ' , 92 ), 'b ' =>array ()),
245+ '1.0.0-alpha+001 ' => array ('M ' =>1 , 'm ' =>0 , 'p ' =>0 , 'pr ' =>array ('alpha ' ), 'b ' =>array ('001 ' )),
246+ '1.2.3-alpha.2+02 ' => array ('M ' =>1 , 'm ' =>2 , 'p ' =>3 , 'pr ' =>array ('alpha ' , 2 ), 'b ' =>array ('02 ' )),
247+ '1.2.3-a.3+02.5.a ' => array ('M ' =>1 , 'm ' =>2 , 'p ' =>3 , 'pr ' =>array ('a ' , 3 ), 'b ' =>array ('02 ' , 5 , 'a ' )),
248+
244249 );
245- foreach ($ t as $ version => $ prerelease ) {
250+ foreach ($ t as $ version => $ parts ) {
246251 $ v =new SemVer \version ($ version );
247- $ this ->assertEqual ($ v ->getPrerelease (), $ prerelease );
252+ $ this ->assertEqual ($ v ->getMajor (), $ parts ['M ' ]);
253+ $ this ->assertEqual ($ v ->getMinor (), $ parts ['m ' ]);
254+ $ this ->assertEqual ($ v ->getPatch (), $ parts ['p ' ]);
255+ $ this ->assertEqual ($ v ->getPrerelease (), $ parts ['pr ' ]);
256+ $ this ->assertEqual ($ v ->getBuild (), $ parts ['b ' ]);
248257 }
249258 }
250-
251259}
0 commit comments