Я пытаюсь внедрить зависимость в свой класс. Но по какой-то причине, когда я тестирую его с помощью Mockito, он не работает, а объект не создается и остается нулевым.
@Data
@Component
@ConfigurationProperties(prefix="docusign")
public class DocuSignProperties {
private String oAuthBaseUrl;
private String baseUrl;
}
В application.properties:
#docuSign properties
docusign.oAuthBaseUrl=https://account-d.docusign.com/oauth
docusign.baseUrl=https://demo.docusign.net/restapi
Класс, который внедряет DocuSignProperties:
@Component
public class DocuSign {
@Autowired
private DocuSignProperties docuSignProperties;
private ApiClient apiClient;
private OAuthToken oAuthToken;
private UserInfo userInfo;
public DocuSign() {
this.initialize();
}
public DocuSign(ProjetoDTO projeto) {
this.projeto = projeto;
this.initialize();
}
private void initialize() {
try {
this.apiClient = new ApiClient(this.docuSignProperties.getBaseUrl()); //here docuSignProperties is null, when should it be instantiated
this.oAuthToken = getOAuthTokenAcesso();
this.setApiClientConfigurations();
}catch (Exception e) {
LOGGER.error(e.getMessage());
e.printStackTrace();
}
}
Класс, который его тестирует:
public class DocuSignTest {
private DocuSignProperties docuSignProperties;
private ProjetoDTO projeto1;
@Mock
private DocuSignProperties docuSignProperties;
@Before
public void setup() throws IOException {
projeto1 = new ProjetoDTO();
projeto1.setId(1L);
projeto1.setDsProjeto("projeto1")
}
@Test
public void criarDocumento() throws Exception {
DocuSign docuSign = new DocuSign(projeto1);
docuSign.sendDoc();
assertNotNull(docuSign);
}
Я хотел бы знать, почему при инициализации не описывается метод documentSignProperties.