Я пишу ниже кода тестового модуля Spring.Модульный тест @Before метод не выполняется.Так как он напрямую работает @PostConstruct, я получаю ошибки Caused by: java.lang.IllegalArgumentException: rate must be positive
, поскольку значение по умолчанию равно 0,00.Я хочу установить какое-либо значение для запроса максимального лимита, чтобы блок postcontstruct проходил гладко.что не так в моем коде?Пожалуйста, помогите.
@Component
public class SurveyPublisher {
@Autowired
private SurveyProperties surveyProperties;
@PostConstruct
public void init() {
rateLimiter = RateLimiter.create(psurveyProperties.getRequestMaxLimit());
}
}
public void publish() {
rateLimiter.acquire();
// do something
}
}
// Класс модульного тестирования
public class SurveyPublisherTest extends AbstractTestNGSpringContextTests {
@Mock
SurveyProperties surveyProperties;
@BeforeMethod
public void init() {
Mockito.when(surveyProperties.getRequestMaxLimit()).thenReturn(40.00);
}
@Test
public void testPublish_noResponse() {
//do some test
}
}