21 Commits

Author SHA1 Message Date
Werner Lewis
b29f59f5ff Disable abstract check in pylint
Version of pylint used in CI does not recognize abstract subclasses of
BaseTarget, so disable warning in these abstract classes.

Signed-off-by: Werner Lewis <werner.lewis@arm.com>
2022-09-21 16:46:39 +01:00
Werner Lewis
412c497cbe Fix TARGET types and code style
Signed-off-by: Werner Lewis <werner.lewis@arm.com>
2022-09-21 16:46:39 +01:00
Werner Lewis
d77d33defb Raise NotImplementedError in abstract methods
Signed-off-by: Werner Lewis <werner.lewis@arm.com>
2022-09-21 16:46:39 +01:00
Werner Lewis
478a4ce1fe Use typing casts for fixed-width tuples
Enforces fixed-width tuple types where mypy does not recognize.

Signed-off-by: Werner Lewis <werner.lewis@arm.com>
2022-09-21 16:46:39 +01:00
Werner Lewis
9509f44d79 Add missing typing
Signed-off-by: Werner Lewis <werner.lewis@arm.com>
2022-09-21 16:46:39 +01:00
Werner Lewis
cace1aa02e Use __new__() for case counting
Signed-off-by: Werner Lewis <werner.lewis@arm.com>
2022-09-21 16:46:39 +01:00
Werner Lewis
c34d037fa0 Split generate_tests to reduce code complexity
Previous implementation mixed the test case generation and the
recursive generation calls together. A separate method is added to
generate test cases for the current class' test function. This reduces
the need to override generate_tests().

Signed-off-by: Werner Lewis <werner.lewis@arm.com>
2022-09-21 16:46:39 +01:00
Werner Lewis
47e37b3b75 Use ABCMeta for abstract classes
Signed-off-by: Werner Lewis <werner.lewis@arm.com>
2022-09-21 16:46:39 +01:00
Werner Lewis
008d90d424 Add details to docstrings
Clarification is added to docstrings, mostly in abstract classes.

Signed-off-by: Werner Lewis <werner.lewis@arm.com>
2022-09-21 16:46:39 +01:00
Werner Lewis
1c2a732203 Convert bools to int before arithmetic
Signed-off-by: Werner Lewis <werner.lewis@arm.com>
2022-09-21 16:46:39 +01:00
Werner Lewis
02998c470a Remove unneeded list concatenation
Signed-off-by: Werner Lewis <werner.lewis@arm.com>
2022-09-21 16:46:39 +01:00
Werner Lewis
70d3f3dcdc Remove abbreviations and clarify attributes
Signed-off-by: Werner Lewis <werner.lewis@arm.com>
2022-09-21 16:46:39 +01:00
Werner Lewis
dcad1e93fe Separate common test generation classes/functions
Signed-off-by: Werner Lewis <werner.lewis@arm.com>
2022-09-21 16:46:39 +01:00
Werner Lewis
92bb1cd8cb Fix incorrect indentation
Signed-off-by: Werner Lewis <werner.lewis@arm.com>
2022-09-21 16:29:49 +01:00
Werner Lewis
f0910ae380 Remove is None from if statement
Signed-off-by: Werner Lewis <werner.lewis@arm.com>
2022-09-21 16:29:49 +01:00
Werner Lewis
d76c5edc8e Fix type issues
Signed-off-by: Werner Lewis <werner.lewis@arm.com>
2022-09-21 16:29:49 +01:00
Werner Lewis
1bdee226e3 Remove set() to preserve test case order
Signed-off-by: Werner Lewis <werner.lewis@arm.com>
2022-09-21 16:29:49 +01:00
Werner Lewis
1c413bda51 Sort tests when generating cases
Signed-off-by: Werner Lewis <werner.lewis@arm.com>
2022-09-21 16:29:49 +01:00
Werner Lewis
5c1173bc1b Add test case generation for bignum add
Signed-off-by: Werner Lewis <werner.lewis@arm.com>
2022-09-21 16:29:49 +01:00
Werner Lewis
423f99bcef Add test generation for bignum cmp variant
Signed-off-by: Werner Lewis <werner.lewis@arm.com>
2022-09-21 16:29:49 +01:00
Werner Lewis
545911f751 Add bignum test generation framework
Adds python script for generation of bignum test cases, with initial
classes for mpi_cmp_mpi test cases. Build scripts are updated to
generate test data.

Signed-off-by: Werner Lewis <werner.lewis@arm.com>
2022-09-21 16:29:49 +01:00