mirror of
https://github.com/spring-projects/spring-boot.git
synced 2026-09-17 12:09:16 +00:00
Merge branch '4.1.x'
Closes gh-51579
This commit is contained in:
+8
-2
@@ -32,8 +32,14 @@ class RabbitEnvironment {
|
||||
private final @Nullable String password;
|
||||
|
||||
RabbitEnvironment(Map<String, @Nullable String> env) {
|
||||
this.username = env.getOrDefault("RABBITMQ_DEFAULT_USER", env.getOrDefault("RABBITMQ_USERNAME", "guest"));
|
||||
this.password = env.getOrDefault("RABBITMQ_DEFAULT_PASS", env.getOrDefault("RABBITMQ_PASSWORD", "guest"));
|
||||
this.username = extract(env, "RABBITMQ_DEFAULT_USER", "RABBITMQ_USERNAME");
|
||||
this.password = extract(env, "RABBITMQ_DEFAULT_PASS", "RABBITMQ_PASSWORD");
|
||||
}
|
||||
|
||||
private static String extract(Map<String, @Nullable String> env, String key, String fallbackKey) {
|
||||
String value = env.get(key);
|
||||
value = (value != null) ? value : env.get(fallbackKey);
|
||||
return (value != null) ? value : "guest";
|
||||
}
|
||||
|
||||
@Nullable String getUsername() {
|
||||
|
||||
+27
@@ -17,8 +17,10 @@
|
||||
package org.springframework.boot.amqp.rabbitmq.docker.compose;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import org.jspecify.annotations.Nullable;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
@@ -69,4 +71,29 @@ class RabbitEnvironmentTests {
|
||||
assertThat(environment.getPassword()).isEqualTo("secret");
|
||||
}
|
||||
|
||||
@Test
|
||||
void getUsernameWhenRabbitmqDefaultUserHasNoValue() {
|
||||
Map<String, @Nullable String> env = new HashMap<>();
|
||||
env.put("RABBITMQ_DEFAULT_USER", null);
|
||||
RabbitEnvironment environment = new RabbitEnvironment(env);
|
||||
assertThat(environment.getUsername()).isEqualTo("guest");
|
||||
}
|
||||
|
||||
@Test
|
||||
void getPasswordWhenRabbitmqDefaultPassHasNoValue() {
|
||||
Map<String, @Nullable String> env = new HashMap<>();
|
||||
env.put("RABBITMQ_DEFAULT_PASS", null);
|
||||
RabbitEnvironment environment = new RabbitEnvironment(env);
|
||||
assertThat(environment.getPassword()).isEqualTo("guest");
|
||||
}
|
||||
|
||||
@Test
|
||||
void getUsernameWhenRabbitmqDefaultUserHasNoValueAndHasRabbitmqUsername() {
|
||||
Map<String, @Nullable String> env = new HashMap<>();
|
||||
env.put("RABBITMQ_DEFAULT_USER", null);
|
||||
env.put("RABBITMQ_USERNAME", "me");
|
||||
RabbitEnvironment environment = new RabbitEnvironment(env);
|
||||
assertThat(environment.getUsername()).isEqualTo("me");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+8
-2
@@ -39,9 +39,15 @@ class RabbitMqAmqpDockerComposeConnectionDetailsFactory extends AbstractAmqpDock
|
||||
@Override
|
||||
protected AmqpEnvironment getAmqpEnvironment(RunningService service) {
|
||||
Map<String, @Nullable String> env = service.env();
|
||||
String username = env.getOrDefault("RABBITMQ_DEFAULT_USER", env.getOrDefault("RABBITMQ_USERNAME", "guest"));
|
||||
String password = env.getOrDefault("RABBITMQ_DEFAULT_PASS", env.getOrDefault("RABBITMQ_PASSWORD", "guest"));
|
||||
String username = extract(env, "RABBITMQ_DEFAULT_USER", "RABBITMQ_USERNAME");
|
||||
String password = extract(env, "RABBITMQ_DEFAULT_PASS", "RABBITMQ_PASSWORD");
|
||||
return new AmqpEnvironment(username, password);
|
||||
}
|
||||
|
||||
private String extract(Map<String, @Nullable String> env, String key, String fallbackKey) {
|
||||
String value = env.get(key);
|
||||
value = (value != null) ? value : env.get(fallbackKey);
|
||||
return (value != null) ? value : "guest";
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
+28
-1
@@ -17,8 +17,10 @@
|
||||
package org.springframework.boot.amqp.docker.compose;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import org.jspecify.annotations.Nullable;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import org.springframework.boot.docker.compose.core.RunningService;
|
||||
@@ -70,7 +72,32 @@ class RabbitMqAmqpDockerComposeConnectionDetailsFactoryTests {
|
||||
assertThat(environment.getPassword()).isEqualTo("secret");
|
||||
}
|
||||
|
||||
private AmqpEnvironment getAmqpEnvironment(Map<String, String> env) {
|
||||
@Test
|
||||
void getUsernameWhenRabbitmqDefaultUserHasNoValue() {
|
||||
Map<String, @Nullable String> env = new HashMap<>();
|
||||
env.put("RABBITMQ_DEFAULT_USER", null);
|
||||
AmqpEnvironment environment = getAmqpEnvironment(env);
|
||||
assertThat(environment.getUsername()).isEqualTo("guest");
|
||||
}
|
||||
|
||||
@Test
|
||||
void getPasswordWhenRabbitmqDefaultPassHasNoValue() {
|
||||
Map<String, @Nullable String> env = new HashMap<>();
|
||||
env.put("RABBITMQ_DEFAULT_PASS", null);
|
||||
AmqpEnvironment environment = getAmqpEnvironment(env);
|
||||
assertThat(environment.getPassword()).isEqualTo("guest");
|
||||
}
|
||||
|
||||
@Test
|
||||
void getUsernameWhenRabbitmqDefaultUserHasNoValueAndHasRabbitmqUsername() {
|
||||
Map<String, @Nullable String> env = new HashMap<>();
|
||||
env.put("RABBITMQ_DEFAULT_USER", null);
|
||||
env.put("RABBITMQ_USERNAME", "me");
|
||||
AmqpEnvironment environment = getAmqpEnvironment(env);
|
||||
assertThat(environment.getUsername()).isEqualTo("me");
|
||||
}
|
||||
|
||||
private AmqpEnvironment getAmqpEnvironment(Map<String, @Nullable String> env) {
|
||||
RunningService runningService = mock(RunningService.class);
|
||||
given(runningService.env()).willReturn(env);
|
||||
return new RabbitMqAmqpDockerComposeConnectionDetailsFactory().getAmqpEnvironment(runningService);
|
||||
|
||||
+8
-2
@@ -35,8 +35,14 @@ class RabbitMqEnvironment {
|
||||
private final @Nullable String password;
|
||||
|
||||
RabbitMqEnvironment(Map<String, @Nullable String> env) {
|
||||
this.username = env.getOrDefault("RABBITMQ_DEFAULT_USER", env.getOrDefault("RABBITMQ_USERNAME", "guest"));
|
||||
this.password = env.getOrDefault("RABBITMQ_DEFAULT_PASS", env.getOrDefault("RABBITMQ_PASSWORD", "guest"));
|
||||
this.username = extract(env, "RABBITMQ_DEFAULT_USER", "RABBITMQ_USERNAME");
|
||||
this.password = extract(env, "RABBITMQ_DEFAULT_PASS", "RABBITMQ_PASSWORD");
|
||||
}
|
||||
|
||||
private static String extract(Map<String, @Nullable String> env, String key, String fallbackKey) {
|
||||
String value = env.get(key);
|
||||
value = (value != null) ? value : env.get(fallbackKey);
|
||||
return (value != null) ? value : "guest";
|
||||
}
|
||||
|
||||
@Nullable String getUsername() {
|
||||
|
||||
+27
@@ -17,8 +17,10 @@
|
||||
package org.springframework.boot.rabbitmq.docker.compose;
|
||||
|
||||
import java.util.Collections;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import org.jspecify.annotations.Nullable;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
@@ -69,4 +71,29 @@ class RabbitMqEnvironmentTests {
|
||||
assertThat(environment.getPassword()).isEqualTo("secret");
|
||||
}
|
||||
|
||||
@Test
|
||||
void getUsernameWhenRabbitmqDefaultUserHasNoValue() {
|
||||
Map<String, @Nullable String> env = new HashMap<>();
|
||||
env.put("RABBITMQ_DEFAULT_USER", null);
|
||||
RabbitMqEnvironment environment = new RabbitMqEnvironment(env);
|
||||
assertThat(environment.getUsername()).isEqualTo("guest");
|
||||
}
|
||||
|
||||
@Test
|
||||
void getPasswordWhenRabbitmqDefaultPassHasNoValue() {
|
||||
Map<String, @Nullable String> env = new HashMap<>();
|
||||
env.put("RABBITMQ_DEFAULT_PASS", null);
|
||||
RabbitMqEnvironment environment = new RabbitMqEnvironment(env);
|
||||
assertThat(environment.getPassword()).isEqualTo("guest");
|
||||
}
|
||||
|
||||
@Test
|
||||
void getUsernameWhenRabbitmqDefaultUserHasNoValueAndHasRabbitmqUsername() {
|
||||
Map<String, @Nullable String> env = new HashMap<>();
|
||||
env.put("RABBITMQ_DEFAULT_USER", null);
|
||||
env.put("RABBITMQ_USERNAME", "me");
|
||||
RabbitMqEnvironment environment = new RabbitMqEnvironment(env);
|
||||
assertThat(environment.getUsername()).isEqualTo("me");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user