1313import net .sourceforge .argparse4j .inf .*;
1414import org .kohsuke .github .*;
1515import org .mockito .*;
16+ import org .slf4j .Logger ;
1617import org .testng .annotations .DataProvider ;
1718import org .testng .annotations .Test ;
1819
2930import java .util .HashMap ;
3031
3132import static com .salesforce .dockerfileimageupdate .model .PullRequestInfo .DEFAULT_TITLE ;
33+ import static com .salesforce .dockerfileimageupdate .utils .ResultsProcessor .REPOS_SKIPPED_MESSAGE ;
3234import static org .mockito .Mockito .*;
3335import static org .testng .Assert .*;
3436
@@ -557,7 +559,7 @@ public void testFindImagesAndFix_notModifiedPostData() throws Exception {
557559 }
558560
559561 @ DataProvider
560- public Object [][] inputlines () throws Exception {
562+ public Object [][] inputLinesForDockerfile () throws Exception {
561563 return new Object [][]{
562564 {"image1" , "3" , "FROM image1_blahblah" , false },
563565 {"image1" , "3" , " FROM image1_blahblah" , false },
@@ -585,7 +587,7 @@ public Object[][] inputlines() throws Exception {
585587 };
586588 }
587589
588- @ Test (dataProvider = "inputlines " )
590+ @ Test (dataProvider = "inputLinesForDockerfile " )
589591 public void testChangeIfDockerfileBaseImageLine (String img , String tag ,
590592 String line , boolean expected ) throws Exception {
591593 gitHubUtil = mock (GitHubUtil .class );
@@ -594,6 +596,47 @@ public void testChangeIfDockerfileBaseImageLine(String img, String tag,
594596 expected );
595597 }
596598
599+ @ DataProvider
600+ public Object [][] inputLinesForDockerCompose () {
601+ return new Object [][]{
602+ {"image1" , "3" , "image: image1_blahblah" , false },
603+ {"image1" , "3" , " image: image1_blahblah" , false },
604+ {"image1" , "3" , "image: image1_blahblah " , false },
605+ {"image1" , "3" , "image: image1_blahblah\t " , false },
606+ {"image1" , "3" , "image: image1_blahblah:2" , false },
607+ {"image2" , "4" , "image: image2_blahblah:latest" , false },
608+ {"image4" , "9" , "image: image4:9" , false },
609+ {"image5" , "246" , "image: image5_" , false },
610+ {"image6" , "26" , "image: image7" , false },
611+ {"image8" , "245" , "image: image8:245" , false },
612+ {"image8" , "245" , "image: image8: 245" , false },
613+ {"imageName" , "7" , "image: imageName:_asasds" , true },
614+ {"imageName" , "7" , " image: imageName:asAA_aa.as_ss" , true },
615+ {"imageName" , "7" , " image: imageName:Asdf@#ggg" , false },
616+ {"imageName" , "7" , " image: imageName:$ITEST_TAG" , false },
617+ {"imageName" , "7" , " image: imageName:latest" , false },
618+ {"image3" , "7" , "image: image3 " , false },
619+ {"image3" , "7" , "\t image: image3\t " , false },
620+ {"image7" , "98" , "image: image7:4" , true },
621+ {"image7" , "98" , "image: image7: 4" , true },
622+ {"image124516418023_1085-1-1248571" , "7357" ,
623+ "image: image124516418023_1085-1-1248571:18026809126359806124890356219518632048125" , true },
624+ {"image" , "1234" ,
625+ "image: image:1234" , false },
626+ {"image" , "1234" ,
627+ "image: image:1234" , false },
628+ };
629+ }
630+
631+ @ Test (dataProvider = "inputLinesForDockerCompose" )
632+ public void testChangeIfDockerfileBaseImageLineForCompose (String img , String tag ,
633+ String line , boolean expected ) {
634+ gitHubUtil = mock (GitHubUtil .class );
635+ dockerfileGitHubUtil = new DockerfileGitHubUtil (gitHubUtil );
636+ assertEquals (dockerfileGitHubUtil .changeIfDockerfileBaseImageLine (img , tag , new StringBuilder (), line ),
637+ expected );
638+ }
639+
597640 @ Test
598641 public void testChangeIfDockerfileBaseImageLine_modifyingStringBuilder () throws Exception {
599642 gitHubUtil = mock (GitHubUtil .class );
@@ -888,4 +931,25 @@ public void testCommentsWithNoDfiuParsedCorrectly(String line, String ignoreImag
888931 dockerfileGitHubUtil = new DockerfileGitHubUtil (gitHubUtil );
889932 assertEquals (dockerfileGitHubUtil .ignorePRCommentPresent (line , ignoreImageString ), expectedResult );
890933 }
934+
935+ @ DataProvider
936+ public Object [][] tagList () {
937+ return new Object [][] {
938+ {"12345" , true },
939+ {"assdfASFF11" , true },
940+ {"_asadsd" , true },
941+ {".weww" , false },
942+ {"Aswd@#asdas" , false },
943+ {"ASDF_SSS-CCC.Ssd" , true },
944+ {"-asasd" , false },
945+ {" " , false }
946+ };
947+ }
948+
949+ @ Test (dataProvider = "tagList" )
950+ public void testValidImageTag (String tag , Boolean expectedResult ) {
951+ gitHubUtil = mock (GitHubUtil .class );
952+ dockerfileGitHubUtil = new DockerfileGitHubUtil (gitHubUtil );
953+ assertEquals (dockerfileGitHubUtil .isValidImageTag (tag ), expectedResult );
954+ }
891955}
0 commit comments