|
|
|
@ -2152,44 +2152,48 @@ START_TEST(test_address_decode)
|
|
|
|
|
int res;
|
|
|
|
|
uint8_t decode[MAX_ADDR_RAW_SIZE];
|
|
|
|
|
|
|
|
|
|
res = ecdsa_address_decode("1JwSSubhmg6iPtRjtyqhUYYH7bZg3Lfy1T", decode);
|
|
|
|
|
res = ecdsa_address_decode("1JwSSubhmg6iPtRjtyqhUYYH7bZg3Lfy1T", 0, decode);
|
|
|
|
|
ck_assert_int_eq(res, 1);
|
|
|
|
|
ck_assert_mem_eq(decode, fromhex("00c4c5d791fcb4654a1ef5e03fe0ad3d9c598f9827"), 21);
|
|
|
|
|
|
|
|
|
|
res = ecdsa_address_decode("myTPjxggahXyAzuMcYp5JTkbybANyLsYBW", decode);
|
|
|
|
|
res = ecdsa_address_decode("myTPjxggahXyAzuMcYp5JTkbybANyLsYBW", 111, decode);
|
|
|
|
|
ck_assert_int_eq(res, 1);
|
|
|
|
|
ck_assert_mem_eq(decode, fromhex("6fc4c5d791fcb4654a1ef5e03fe0ad3d9c598f9827"), 21);
|
|
|
|
|
|
|
|
|
|
res = ecdsa_address_decode("NEWoeZ6gh4CGvRgFAoAGh4hBqpxizGT6gZ", decode);
|
|
|
|
|
res = ecdsa_address_decode("NEWoeZ6gh4CGvRgFAoAGh4hBqpxizGT6gZ", 52, decode);
|
|
|
|
|
ck_assert_int_eq(res, 1);
|
|
|
|
|
ck_assert_mem_eq(decode, fromhex("34c4c5d791fcb4654a1ef5e03fe0ad3d9c598f9827"), 21);
|
|
|
|
|
|
|
|
|
|
res = ecdsa_address_decode("LdAPi7uXrLLmeh7u57pzkZc3KovxEDYRJq", decode);
|
|
|
|
|
res = ecdsa_address_decode("LdAPi7uXrLLmeh7u57pzkZc3KovxEDYRJq", 48, decode);
|
|
|
|
|
ck_assert_int_eq(res, 1);
|
|
|
|
|
ck_assert_mem_eq(decode, fromhex("30c4c5d791fcb4654a1ef5e03fe0ad3d9c598f9827"), 21);
|
|
|
|
|
|
|
|
|
|
res = ecdsa_address_decode("1C7zdTfnkzmr13HfA2vNm5SJYRK6nEKyq8", decode);
|
|
|
|
|
res = ecdsa_address_decode("1C7zdTfnkzmr13HfA2vNm5SJYRK6nEKyq8", 0, decode);
|
|
|
|
|
ck_assert_int_eq(res, 1);
|
|
|
|
|
ck_assert_mem_eq(decode, fromhex("0079fbfc3f34e7745860d76137da68f362380c606c"), 21);
|
|
|
|
|
|
|
|
|
|
res = ecdsa_address_decode("mrdwvWkma2D6n9mGsbtkazedQQuoksnqJV", decode);
|
|
|
|
|
res = ecdsa_address_decode("mrdwvWkma2D6n9mGsbtkazedQQuoksnqJV", 111, decode);
|
|
|
|
|
ck_assert_int_eq(res, 1);
|
|
|
|
|
ck_assert_mem_eq(decode, fromhex("6f79fbfc3f34e7745860d76137da68f362380c606c"), 21);
|
|
|
|
|
|
|
|
|
|
res = ecdsa_address_decode("N7hMq7AmgNsQXaYARrEwybbDGei9mcPNqr", decode);
|
|
|
|
|
res = ecdsa_address_decode("N7hMq7AmgNsQXaYARrEwybbDGei9mcPNqr", 52, decode);
|
|
|
|
|
ck_assert_int_eq(res, 1);
|
|
|
|
|
ck_assert_mem_eq(decode, fromhex("3479fbfc3f34e7745860d76137da68f362380c606c"), 21);
|
|
|
|
|
|
|
|
|
|
res = ecdsa_address_decode("LWLwtfycqf1uFqypLAug36W4kdgNwrZdNs", decode);
|
|
|
|
|
res = ecdsa_address_decode("LWLwtfycqf1uFqypLAug36W4kdgNwrZdNs", 48, decode);
|
|
|
|
|
ck_assert_int_eq(res, 1);
|
|
|
|
|
ck_assert_mem_eq(decode, fromhex("3079fbfc3f34e7745860d76137da68f362380c606c"), 21);
|
|
|
|
|
|
|
|
|
|
// invalid char
|
|
|
|
|
res = ecdsa_address_decode("1JwSSubhmg6i000jtyqhUYYH7bZg3Lfy1T", decode);
|
|
|
|
|
res = ecdsa_address_decode("1JwSSubhmg6i000jtyqhUYYH7bZg3Lfy1T", 0, decode);
|
|
|
|
|
ck_assert_int_eq(res, 0);
|
|
|
|
|
|
|
|
|
|
// invalid address
|
|
|
|
|
res = ecdsa_address_decode("1111Subhmg6iPtRjtyqhUYYH7bZg3Lfy1T", decode);
|
|
|
|
|
res = ecdsa_address_decode("1111Subhmg6iPtRjtyqhUYYH7bZg3Lfy1T", 0, decode);
|
|
|
|
|
ck_assert_int_eq(res, 0);
|
|
|
|
|
|
|
|
|
|
// invalid version
|
|
|
|
|
res = ecdsa_address_decode("LWLwtfycqf1uFqypLAug36W4kdgNwrZdNs", 0, decode);
|
|
|
|
|
ck_assert_int_eq(res, 0);
|
|
|
|
|
}
|
|
|
|
|
END_TEST
|
|
|
|
|