All checks were successful
DCO / DCO (pull_request) Successful in 28s
Signed-off-by: Ori Bruk <o.bruk@yadro.com>
56 lines
1.9 KiB
Java
56 lines
1.9 KiB
Java
package info.frostfs.sdk.mappers;
|
|
|
|
import frostfs.refs.Types;
|
|
import info.frostfs.sdk.dto.Signature;
|
|
import info.frostfs.sdk.enums.SignatureScheme;
|
|
import org.junit.jupiter.api.Test;
|
|
import org.junit.jupiter.params.ParameterizedTest;
|
|
import org.junit.jupiter.params.provider.EnumSource;
|
|
import org.mockito.MockedStatic;
|
|
|
|
import static org.assertj.core.api.Assertions.assertThat;
|
|
import static org.junit.jupiter.api.Assertions.*;
|
|
import static org.mockito.Mockito.mockStatic;
|
|
|
|
public class SignatureMapperTest {
|
|
|
|
@ParameterizedTest
|
|
@EnumSource(value = SignatureScheme.class)
|
|
void toGrpcMessage_success(SignatureScheme scheme) {
|
|
//Given
|
|
var signature = new Signature();
|
|
signature.setKey(new byte[]{1, 2, 3});
|
|
signature.setSign(new byte[]{4, 5, 6});
|
|
signature.setScheme(scheme);
|
|
|
|
//When
|
|
var result = SignatureMapper.toGrpcMessage(signature);
|
|
|
|
//Then
|
|
assertNotNull(result);
|
|
assertThat(result.getKey().toByteArray()).containsExactly(signature.getKey());
|
|
assertThat(result.getSign().toByteArray()).containsExactly(signature.getSign());
|
|
assertEquals(signature.getScheme().value, result.getScheme().getNumber());
|
|
}
|
|
|
|
@Test
|
|
void toGrpcMessage_null() {
|
|
//When + Then
|
|
assertNull(SignatureMapper.toGrpcMessage(null));
|
|
}
|
|
|
|
@Test
|
|
void toGrpcMessage_notValidScheme() {
|
|
//Given
|
|
var signature = new Signature();
|
|
signature.setScheme(SignatureScheme.ECDSA_SHA512);
|
|
|
|
//When + Then
|
|
try (MockedStatic<Types.SignatureScheme> mockStatic = mockStatic(Types.SignatureScheme.class)) {
|
|
mockStatic.when(() -> Types.SignatureScheme.forNumber(signature.getScheme().value))
|
|
.thenReturn(null);
|
|
|
|
assertThrows(IllegalArgumentException.class, () -> SignatureMapper.toGrpcMessage(signature));
|
|
}
|
|
}
|
|
}
|