Added ecp_read_binary().
diff --git a/tests/suites/test_suite_ecp.function b/tests/suites/test_suite_ecp.function
index b273a70..fdd3da2 100644
--- a/tests/suites/test_suite_ecp.function
+++ b/tests/suites/test_suite_ecp.function
@@ -258,6 +258,44 @@
END_CASE
BEGIN_CASE
+ecp_read_binary:id:input:format:x:y:z:ret
+{
+ ecp_group grp;
+ ecp_point P;
+ mpi X, Y, Z;
+ int ilen;
+ unsigned char buf[256];
+
+ memset( buf, 0, sizeof( buf ) );
+
+ ecp_group_init( &grp ); ecp_point_init( &P );
+ mpi_init( &X ); mpi_init( &Y ); mpi_init( &Z );
+
+ TEST_ASSERT( ecp_use_known_dp( &grp, POLARSSL_ECP_DP_{id} ) == 0 );
+
+ TEST_ASSERT( mpi_read_string( &X, 16, {x} ) == 0 );
+ TEST_ASSERT( mpi_read_string( &Y, 16, {y} ) == 0 );
+ TEST_ASSERT( mpi_read_string( &Z, 16, {z} ) == 0 );
+
+ ilen = unhexify( buf, {input} );
+
+#define POLARSSL_ECP_PF_UNKNOWN -1
+ TEST_ASSERT( ecp_read_binary( &grp, &P, POLARSSL_ECP_PF_{format},
+ buf, ilen ) == {ret} );
+
+ if( {ret} == 0 )
+ {
+ TEST_ASSERT( mpi_cmp_mpi( &P.X, &X ) == 0 );
+ TEST_ASSERT( mpi_cmp_mpi( &P.Y, &Y ) == 0 );
+ TEST_ASSERT( mpi_cmp_mpi( &P.Z, &Z ) == 0 );
+ }
+
+ ecp_group_free( &grp ); ecp_point_free( &P );
+ mpi_free( &X ); mpi_free( &Y ); mpi_free( &Z );
+}
+END_CASE
+
+BEGIN_CASE
ecp_selftest:
{
TEST_ASSERT( ecp_self_test( 0 ) == 0 );