Bignum tests: improve mod descriptions
There are no semantic changes to the generated tests. Signed-off-by: Janos Follath <janos.follath@arm.com>
This commit is contained in:
parent
284672ccfb
commit
8ae7a657ac
2 changed files with 22 additions and 13 deletions
|
@ -168,9 +168,14 @@ class OperationCommon(test_data_generation.BaseTest):
|
|||
generated to provide some context to the test case.
|
||||
"""
|
||||
if not self.case_description:
|
||||
self.case_description = "{:x} {} {:x}".format(
|
||||
self.int_a, self.symbol, self.int_b
|
||||
)
|
||||
if self.arity == 1:
|
||||
self.case_description = "{} {:x}".format(
|
||||
self.symbol, self.int_a
|
||||
)
|
||||
elif self.arity == 2:
|
||||
self.case_description = "{:x} {} {:x}".format(
|
||||
self.int_a, self.symbol, self.int_b
|
||||
)
|
||||
return super().description()
|
||||
|
||||
@property
|
||||
|
@ -232,7 +237,6 @@ class OperationCommon(test_data_generation.BaseTest):
|
|||
)
|
||||
|
||||
|
||||
|
||||
class ModOperationCommon(OperationCommon):
|
||||
#pylint: disable=abstract-method
|
||||
"""Target for bignum mod_raw test case generation."""
|
||||
|
@ -278,6 +282,17 @@ class ModOperationCommon(OperationCommon):
|
|||
return False
|
||||
return True
|
||||
|
||||
def description(self) -> str:
|
||||
"""Generate a description for the test case.
|
||||
|
||||
It uses the form A `symbol` B mod N, where symbol is used to represent
|
||||
the operation.
|
||||
"""
|
||||
|
||||
if not self.case_description:
|
||||
return super().description() + " mod {:x}".format(self.int_n)
|
||||
return super().description()
|
||||
|
||||
@classmethod
|
||||
def input_cases_args(cls) -> Iterator[Tuple[Any, Any, Any]]:
|
||||
if cls.arity == 1:
|
||||
|
|
|
@ -55,6 +55,7 @@ class BignumModRawConvertToMont(bignum_common.ModOperationCommon,
|
|||
|
||||
test_function = "mpi_mod_raw_to_mont_rep"
|
||||
test_name = "Convert into Mont: "
|
||||
symbol = "R *"
|
||||
input_style = "arch_split"
|
||||
arity = 1
|
||||
|
||||
|
@ -108,24 +109,17 @@ class BignumModRawConvertToMont(bignum_common.ModOperationCommon,
|
|||
"947fb3baf674f74a673cf1d38126983a19ed52c7439fab42c2185"
|
||||
]
|
||||
|
||||
descr_tpl = '{} #{} N: \"{}\" A: \"{}\".'
|
||||
|
||||
def result(self) -> List[str]:
|
||||
result = (self.int_a * self.r) % self.int_n
|
||||
return [self.format_result(result)]
|
||||
|
||||
def description(self) -> str:
|
||||
return self.descr_tpl.format(self.test_name,
|
||||
self.count,
|
||||
self.int_n,
|
||||
self.int_a)
|
||||
|
||||
|
||||
class BignumModRawConvertFromMont(BignumModRawConvertToMont):
|
||||
""" Test cases for mpi_mod_raw_from_mont_rep(). """
|
||||
|
||||
count = 0
|
||||
test_function = "mpi_mod_raw_from_mont_rep"
|
||||
test_name = "Convert from Mont: "
|
||||
symbol = "1/R *"
|
||||
|
||||
input_values = ["0",
|
||||
"1",
|
||||
|
|
Loading…
Reference in a new issue