2121import  io .spring .initializr .generator .buildsystem .Build ;
2222import  io .spring .initializr .generator .buildsystem .maven .MavenBuild ;
2323import  io .spring .initializr .generator .project .MutableProjectDescription ;
24- import  io .spring .initializr .generator .project .ProjectDescription ;
2524import  io .spring .initializr .generator .test .InitializrMetadataTestBuilder ;
2625import  io .spring .initializr .generator .version .Version ;
2726import  io .spring .initializr .metadata .Dependency ;
2827import  io .spring .initializr .metadata .InitializrMetadata ;
2928import  io .spring .initializr .metadata .support .MetadataBuildItemResolver ;
3029import  org .junit .jupiter .api .BeforeEach ;
3130import  org .junit .jupiter .api .Test ;
31+ import  org .junit .jupiter .params .ParameterizedTest ;
32+ import  org .junit .jupiter .params .provider .CsvSource ;
3233
3334import  static  org .assertj .core .api .Assertions .assertThat ;
3435
@@ -42,7 +43,7 @@ class WarPackagingWebStarterBuildCustomizerTests {
4243
4344	private  static  final  String  PLATFORM_VERSION  = "1.0.0" ;
4445
45- 	private  ProjectDescription  projectDescription ;
46+ 	private  MutableProjectDescription  projectDescription ;
4647
4748	@ BeforeEach 
4849	void  setUp () {
@@ -113,6 +114,26 @@ void shouldUseResolvedDependencies() {
113114		assertThat (tomcatDependency .getArtifactId ()).isEqualTo ("mapped-tomcat" );
114115	}
115116
117+ 	@ ParameterizedTest 
118+ 	@ CsvSource (textBlock  = """ 
119+ 			3.4.0,org.springframework.boot:spring-boot-starter-tomcat 
120+ 			3.5.0,org.springframework.boot:spring-boot-starter-tomcat 
121+ 			4.0.0-M1,org.springframework.boot:spring-boot-starter-tomcat 
122+ 			4.0.0-M2,org.springframework.boot:spring-boot-starter-tomcat 
123+ 			4.0.0-M3,org.springframework.boot:spring-boot-starter-tomcat 
124+ 			4.0.0-RC1,org.springframework.boot:spring-boot-tomcat-runtime 
125+ 			4.0.0,org.springframework.boot:spring-boot-tomcat-runtime 
126+ 			""" )
127+ 	void  shouldAddSpringBootTomcatRuntimeForBoot4Rc1 (String  bootVersion , String  coordinates ) {
128+ 		InitializrMetadata  metadata  = InitializrMetadataTestBuilder .withDefaults ().build ();
129+ 		this .projectDescription .setPlatformVersion (Version .parse (bootVersion ));
130+ 		Build  build  = createBuild (metadata );
131+ 		new  WarPackagingWebStarterBuildCustomizer (metadata , this .projectDescription ).customize (build );
132+ 		io .spring .initializr .generator .buildsystem .Dependency  tomcat  = build .dependencies ().get ("tomcat" );
133+ 		String  actualCoordinates  = tomcat .getGroupId () + ":"  + tomcat .getArtifactId ();
134+ 		assertThat (actualCoordinates ).isEqualTo (coordinates );
135+ 	}
136+ 
116137	private  Build  createBuild (InitializrMetadata  metadata ) {
117138		return  new  MavenBuild (new  MetadataBuildItemResolver (metadata , Version .parse ("2.0.0.RELEASE" )));
118139	}
0 commit comments