frostfs-sdk-java/models/src/test/java/info/frostfs/sdk/mappers/StatusMapperTest.java
Bruk Ori 441d3129dc
All checks were successful
DCO / DCO (pull_request) Successful in 28s
[#6] cover the models module with junit tests
Signed-off-by: Ori Bruk <o.bruk@yadro.com>
2024-08-21 11:12:33 +03:00

53 lines
1.4 KiB
Java

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));
}
}