Code development platform for open source projects from the European Union institutions

Skip to content
Snippets Groups Projects
Commit b7fc6773 authored by Lorenzo Gandino's avatar Lorenzo Gandino
Browse files

create MtlsClientFactoryTest

parent 9bfe1db5
No related branches found
No related tags found
2 merge requests!106Release,!105Coverage implementation
Pipeline #220671 passed
package com.aruba.simpl.usersroles.configurations;
import static org.mockito.BDDMockito.given;
import static org.mockito.Mockito.*;
import com.aruba.simpl.client.SimplClient.Builder;
import com.aruba.simpl.client.adapters.EphemeralProofAdapter;
import com.aruba.simpl.client.feign.FeignSimplClient;
import com.aruba.simpl.common.interceptors.TierOneTokenPropagatorInterceptor;
import java.security.KeyStore;
import java.security.cert.Certificate;
import java.util.Collections;
import java.util.List;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.extension.ExtendWith;
import org.mockito.MockedStatic;
import org.mockito.Mockito;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.mock.mockito.MockBean;
import org.springframework.context.annotation.Import;
import org.springframework.test.context.junit.jupiter.SpringExtension;
@ExtendWith(SpringExtension.class)
@Import({MtlsClientFactory.class})
@MockBean(
classes = {
TierOneTokenPropagatorInterceptor.class,
MtlsClientProperties.class,
EphemeralProofAdapter.class,
})
public class MtlsClientFactoryTest {
@Autowired
MtlsClientFactory mtlsClientFactory;
@MockBean
private FeignSimplClient simplClient;
@Test
void buildAuthorityClient_success() throws Exception {
var url = "url";
var keyStore = mock(KeyStore.class);
var password = "pwd";
Certificate certificate = mock(Certificate.class);
Certificate[] certs = {certificate};
var simplClientBuilder = mock(Builder.class);
var feignBuilder = mock(feign.Feign.Builder.class);
given(keyStore.aliases()).willReturn(Collections.enumeration(List.of("keystore_alias")));
given(keyStore.getCertificateChain("keystore_alias")).willReturn(certs);
given(simplClient.builder(any())).willReturn(simplClientBuilder);
given(simplClientBuilder.setAuthorizationHeaderSupplier(any())).willReturn(simplClientBuilder);
given(simplClientBuilder.setEphemeralProofAdapter(any())).willReturn(simplClientBuilder);
given(simplClientBuilder.setAuthorityUrlSupplier(any())).willReturn(simplClientBuilder);
given(simplClientBuilder.build()).willReturn(feignBuilder);
try (MockedStatic<KeyStore> ks = Mockito.mockStatic(KeyStore.class)) {
ks.when(() -> KeyStore.getInstance("PKCS12")).thenReturn(keyStore);
mtlsClientFactory.buildAuthorityClient(url, keyStore, password);
}
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment