Fix WebServerPortFileWriter.getPortFile() without extension
See gh-43115
This commit is contained in:
parent
0c60e6f3a2
commit
dfcc7c5c2d
|
@ -110,7 +110,9 @@ public class WebServerPortFileWriter implements ApplicationListener<WebServerIni
|
|||
}
|
||||
String name = this.file.getName();
|
||||
String extension = StringUtils.getFilenameExtension(this.file.getName());
|
||||
name = name.substring(0, name.length() - extension.length() - 1);
|
||||
if (extension != null) {
|
||||
name = name.substring(0, name.length() - extension.length() - 1);
|
||||
}
|
||||
if (isUpperCase(name)) {
|
||||
name = name + "-" + namespace.toUpperCase(Locale.ENGLISH);
|
||||
}
|
||||
|
|
|
@ -110,6 +110,15 @@ class WebServerPortFileWriterTests {
|
|||
assertThat(collectFileNames(file.getParentFile())).contains(managementFile);
|
||||
}
|
||||
|
||||
@Test
|
||||
void getPortFileWhenPortFileNameDoesNotHaveExtension() {
|
||||
File file = new File(this.tempDir, "portfile");
|
||||
WebServerPortFileWriter listener = new WebServerPortFileWriter(file);
|
||||
WebServerApplicationContext applicationContext = mock(WebServerApplicationContext.class);
|
||||
given(applicationContext.getServerNamespace()).willReturn("management");
|
||||
assertThat(listener.getPortFile(applicationContext).getName()).isEqualTo("portfile-management");
|
||||
}
|
||||
|
||||
private WebServerInitializedEvent mockEvent(String namespace, int port) {
|
||||
WebServer webServer = mock(WebServer.class);
|
||||
given(webServer.getPort()).willReturn(port);
|
||||
|
|
Loading…
Reference in New Issue