package info.frostfs.sdk; import info.frostfs.sdk.exceptions.ProcessFrostFSException; import info.frostfs.sdk.exceptions.ValidationFrostFSException; import org.junit.jupiter.api.Test; import static org.assertj.core.api.Assertions.assertThat; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.junit.jupiter.api.Assertions.assertThrows; public class Base58Test { private static final String WIF = "L1YS4myg3xHPvi3FHeLaEt7G8upwJaWL5YLV7huviuUtXFpzBMqZ"; private static final byte[] DECODE = new byte[]{ -128, -128, -5, 30, -36, -118, 85, -67, -6, 81, 43, 93, -38, 106, 21, -88, 127, 15, 125, -79, -17, -40, 77, -15, 122, -88, 72, 109, -47, 125, -80, -40, -38, 1 }; @Test void base58DecodeEncode() { //When + Then assertEquals(WIF, Base58.base58CheckEncode(Base58.base58CheckDecode(WIF))); } @Test void base58Decode_success() { //When var decode = Base58.base58CheckDecode(WIF); //Then assertThat(decode).hasSize(34).containsExactly(DECODE); } @Test void base58Decode_wrong() { //When + Then assertThrows(ValidationFrostFSException.class, () -> Base58.base58CheckDecode(null)); assertThrows(ValidationFrostFSException.class, () -> Base58.base58CheckDecode("")); assertThrows(ValidationFrostFSException.class, () -> Base58.base58CheckDecode("WIF")); assertThrows(ProcessFrostFSException.class, () -> Base58.base58CheckDecode("fh")); } @Test void base58Encode_success() { //When var encode = Base58.base58CheckEncode(DECODE); //Then assertEquals(WIF, encode); } @Test void base58Encode_wrong() { //When + Then assertThrows(ValidationFrostFSException.class, () -> Base58.base58CheckEncode(null)); } }