package info.frostfs.sdk.mappers; import frostfs.status.Types; import info.frostfs.sdk.enums.StatusCode; import org.junit.jupiter.api.Test; import org.junit.jupiter.params.ParameterizedTest; import org.junit.jupiter.params.provider.EnumSource; import static org.junit.jupiter.api.Assertions.*; public class StatusMapperTest { @ParameterizedTest @EnumSource(value = StatusCode.class) void toModel_success(StatusCode statusCode) { //Given var status = Types.Status.newBuilder() .setCode(statusCode.value) .setMessage("test") .build(); //When var result = StatusMapper.toModel(status); //Then assertNotNull(result); assertEquals(status.getCode(), result.getCode().value); assertEquals(status.getMessage(), result.getMessage()); } @Test void toModel_null() { //When var result = StatusMapper.toModel(null); //Then assertNotNull(result); assertEquals(StatusCode.SUCCESS.value, result.getCode().value); assertEquals("", result.getMessage()); } @Test void toModel_notValid() { //Given var status = Types.Status.newBuilder() .setCode(-1) .setMessage("test") .build(); //When + Then assertThrows(IllegalArgumentException.class, () -> StatusMapper.toModel(status)); } }