File tree Expand file tree Collapse file tree 2 files changed +14
-5
lines changed
main/java/org/springframework/sbm/build/api
test/java/org/springframework/sbm/build/api Expand file tree Collapse file tree 2 files changed +14
-5
lines changed Original file line number Diff line number Diff line change @@ -44,9 +44,9 @@ public Stream<Module> stream() {
44
44
45
45
public Module getRootModule () {
46
46
return modules .stream ()
47
- .sorted (( m2 , m1 ) -> m1 .getBuildFile ().getAbsolutePath (). toString (). compareTo ( m2 . getBuildFile (). getAbsolutePath (). toString () ))
47
+ .filter ( m -> m .getBuildFile ().isRootBuildFile ( ))
48
48
.findFirst ()
49
- .orElse ( modules . get ( 0 ));
49
+ .orElseThrow (() -> new RootBuildFileNotFoundException ( "Module with root build file is missing" ));
50
50
}
51
51
52
52
public List <Module > list () {
Original file line number Diff line number Diff line change 22
22
import org .springframework .sbm .project .resource .TestProjectContext ;
23
23
24
24
import java .nio .file .Path ;
25
+ import java .util .List ;
26
+ import java .util .Optional ;
27
+ import java .util .stream .Stream ;
25
28
26
29
import static org .assertj .core .api .Assertions .assertThat ;
30
+ import static org .assertj .core .api .Assertions .assertThatThrownBy ;
27
31
28
32
class ApplicationModulesTest {
29
33
@@ -115,17 +119,22 @@ void shouldBeRecognizedAsMultiModuleProject() {
115
119
}
116
120
117
121
@ Test
118
- void rootModule () {
122
+ void shouldFindRootModule () {
119
123
Module rootModule = sut .getRootModule ();
120
124
assertThat (rootModule .getModulePath ()).isEqualTo (Path .of ("" ));
121
125
assertThat (rootModule .getBuildFile ().getCoordinates ()).isEqualTo ("org.example:parent:1.0-SNAPSHOT" );
122
- // assertThat(rootModule.getModules().get(0).getBuildFile().getCoordinates()).isEqualTo("org.example:module1:1.0-SNAPSHOT");
123
- // assertThat(rootModule.getModules().get(1).getBuildFile().getCoordinates()).isEqualTo("org.example:module2:1.0-SNAPSHOT");
124
126
assertThat (rootModule .getDeclaredModules ()).hasSize (2 );
125
127
assertThat (rootModule .getDeclaredModules ().get (0 )).isEqualTo ("org.example:module1:1.0-SNAPSHOT" );
126
128
assertThat (rootModule .getDeclaredModules ().get (1 )).isEqualTo ("org.example:module2:1.0-SNAPSHOT" );
127
129
}
128
130
131
+ @ Test
132
+ void shouldNotFindRootModuleForMissingRootBuildFile () {
133
+ ApplicationModules applicationModules = new ApplicationModules (List .of ());
134
+
135
+ assertThatThrownBy (applicationModules ::getRootModule ).isInstanceOf (RootBuildFileNotFoundException .class );
136
+ }
137
+
129
138
@ Test
130
139
void getModule () {
131
140
Module parentModule = sut .findModule ("org.example:parent:1.0-SNAPSHOT" ).get ();
You can’t perform that action at this time.
0 commit comments