Регистрация компонента с несколькими различными свойствами для проверки ConditionalOnPropertiesJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Регистрация компонента с несколькими различными свойствами для проверки ConditionalOnProperties

Сообщение Anonymous »

У меня возникла проблема с написанием теста для проверки правильности работы @ConditionalOnProperty. Мне не удалось найти решение для регистрации компонента с несколькими свойствами приложения, чтобы узнать, создает ли он компонент или нет.
Класс, который должен быть создан как компонент

Код: Выделить всё

@Component
@ConditionalOnProperties(prefix = "card.services.connection", value = "baseUrl")
public CardService {

}
Я пытался реализовать тест, установив свойства через System.setProperty(..);

Код: Выделить всё

@SpringBootTest(classes = CardConfiguration.class)
class ContextTest {

@Autowired
private ConfigurableApplicationContext context;

@BeforeEach
void setUp() {
System.setProperty("card.services.connection.baseUrl", "http://localhost:8080");
}

@Test
void registerCardBean() {
context.getBeanFactory().registerSingleton("cardbean", mock(CardService.class));
boolean tietob2crest = context.containsBeanDefinition("cardbean");
Assertions.assertTrue(tietob2crest);
}

}
В этом сценарии я получил проваленный тест. Я не знаю почему, потому что я установил свойство и указал в аннотации, что если есть существующее свойство, то оно может создать бин, однако оно не работает.
Можете ли вы предложить пожалуйста, один из лучших методов для такого случая.

Подробнее здесь: https://stackoverflow.com/questions/792 ... nalonprope
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»