Add check for test input

The input for fix_quasi_reduction must be in range 0 <= X < 2N.

Signed-off-by: Gabor Mezei <gabor.mezei@arm.com>
diff --git a/tests/suites/test_suite_bignum_mod_raw.function b/tests/suites/test_suite_bignum_mod_raw.function
index 9e29130..587c832 100644
--- a/tests/suites/test_suite_bignum_mod_raw.function
+++ b/tests/suites/test_suite_bignum_mod_raw.function
@@ -348,6 +348,7 @@
     mbedtls_mpi_uint *A = NULL;
     mbedtls_mpi_uint *N = NULL;
     mbedtls_mpi_uint *res = NULL;
+    mbedtls_mpi_uint *tmp = NULL;
     size_t limbs_A;
     size_t limbs_N;
     size_t limbs_res;
@@ -365,6 +366,13 @@
     TEST_EQUAL(limbs_A,   limbs);
     TEST_EQUAL(limbs_res, limbs);
 
+    ASSERT_ALLOC(tmp, limbs);
+    memcpy(tmp, A, bytes);
+
+    /* Check that 0 <= X < 2N */
+    mbedtls_mpi_uint c = mbedtls_mpi_core_sub(tmp, A, N, limbs);
+    TEST_ASSERT(c || mbedtls_mpi_core_lt_ct(tmp, N, limbs));
+
     TEST_EQUAL(mbedtls_mpi_mod_modulus_setup(
                    &m, N, limbs,
                    MBEDTLS_MPI_MOD_REP_MONTGOMERY), 0);
@@ -375,6 +383,7 @@
 exit:
     mbedtls_free(A);
     mbedtls_free(res);
+    mbedtls_free(tmp);
 
     mbedtls_mpi_mod_modulus_free(&m);
     mbedtls_free(N);