Mohammad Azim Khan
440d8737c6
Fix macro validation regex
2018-08-06 11:42:56 +01:00
Mohammad Azim Khan
ee6529eb83
Add generate_test_code.py unit tests in all.sh
2018-08-06 11:42:56 +01:00
Mohammad Azim Khan
21798105f6
Pylint tests in all.sh
2018-08-06 11:42:56 +01:00
Mohammad Azim Khan
539aa06f64
Fix Python 2 & 3 compatibility in test_generate_test_code.py
2018-08-06 11:42:56 +01:00
Mohammad Azim Khan
32cbcdac8f
Fix Pylint errors in Python scripts
2018-08-06 11:42:56 +01:00
Azim Khan
630281349e
Replaced escaped_split() logic with regex
2018-08-06 11:42:56 +01:00
Azim Khan
fcdf685302
Make test function parsing robust
...
This commit enhances parsing of the test function in generate_test_code.py for
cases where return type and function name are on separate lines.
2018-08-06 11:42:56 +01:00
Azim Khan
4084ec7ae5
Fixed unit tests in test_generate_test_code.py
2018-08-06 11:42:56 +01:00
Azim Khan
8d686bfdb1
Incorporated code revoew comments.
2018-08-06 11:42:56 +01:00
Azim Khan
b31aa44e16
Fix style errors reported by pylint
2018-08-06 11:42:56 +01:00
Azim Khan
aee05bbe70
Add test suite framework summary
2018-08-06 11:42:56 +01:00
Azim Khan
63ab501aa7
Fix generate_test_code.py argument --helpers-file in CMakeLists.txt
2018-08-06 11:42:56 +01:00
Azim Khan
27a35e7712
Wildcard possible targets and document
...
Test application names and function file names can be constructed
based on the followed naming convention. This commit documents the
naming convention and removes explicit listing of the test
executables and the lookup table for finding .function file.
2018-08-06 11:42:56 +01:00
Azim Khan
5fcca46a3a
Rename HexParam_t -> data_t for consistent coding style
2018-08-06 11:42:06 +01:00
Azim Khan
62a5d7d65a
Document status/error codes in helper.function
2018-08-06 11:42:06 +01:00
Azim Khan
951a2c8898
Improve documentation in mbedtls_test.py
2018-08-06 11:42:06 +01:00
Azim Khan
e3b26af7c0
Improve documentation in generate_test_code.py
2018-08-06 11:42:06 +01:00
Azim Khan
b98e6eec58
Replace asserts with exceptions in mbedtls_test.py
2018-08-06 11:42:06 +01:00
Azim Khan
040b6a2281
Wrap code to 79 character limit
2018-08-06 11:42:06 +01:00
Azim Khan
936ea9302a
Strip whitespaces added by decode() function
2018-08-06 11:42:06 +01:00
Mohammad Azim Khan
00c4b090c1
Change intermediate data file extension to .datax
2018-08-06 11:42:06 +01:00
Mohammad Azim Khan
ff560f2239
Rename makefile target gen-embedded-test - generate-target-tests
2018-08-06 11:42:06 +01:00
Mohammad Azim Khan
cfd834274b
Use integer instead of string as test result
2018-08-06 11:42:06 +01:00
Mohammad Azim Khan
53faf5c964
Widen the test app columns
2018-08-06 11:42:06 +01:00
Mohammad Azim Khan
8a3628fc86
Set PYTHON using ?= syntax
2018-08-06 11:40:58 +01:00
Mohammad Azim Khan
8f6e8cfcc7
Print line number with data file error
2018-08-06 11:40:58 +01:00
Mohammad Azim Khan
3b06f226e9
Replace asserts with exceptions in generate_test_code.py
2018-08-06 11:40:58 +01:00
Mohammad Azim Khan
c3521dfdd6
Fix generate_test_code.py unit tests
2018-08-06 11:40:58 +01:00
Azim Khan
0fa3504a77
Add missing MSVC typedefs
2018-08-06 11:40:58 +01:00
Gilles Peskine
667f7f8369
Fix generation of #line directives in Python 2
...
When using Python 2 (which is done in the Makefile), all #line
directives from the test code were generated with the line number 1.
This traces back to the change in the method name for generators in
Python 2 (next) vs Python 3 (__next__). Override both methods so that
the script remains compatible with both Python 2 and Python 3.
2018-08-06 11:40:58 +01:00
Gilles Peskine
7776141a16
Don't generate lines with only whitespace
2018-08-06 11:40:58 +01:00
Mohammad Azim Khan
9b06f37601
Give execute permissions to Python scripts
2018-08-06 11:40:58 +01:00
Mohammad Azim Khan
b73159d639
Remove white spaces caught by check-files.py
2018-08-06 11:40:58 +01:00
Mohammad Azim Khan
ddde34c698
Remove git conflict marker from test_suite_timing.function
2018-08-06 11:40:58 +01:00
Mohammad Azim Khan
76135345c8
Fix gcc-7 -Wformat-truncation warning
...
Function test_snprintf() is called by run_test_snprintf() with constant test
data. It gets inlined and is subjected to snprintf format truncation checks
introduced by -Wformat-truncation in gcc-7. -Wformat-truncation is turned
On by -Wall and other similar options. It results in error with -Werror.
-Wformat-truncation makes tests performed by run_test_snprintf() redundant
on gcc. But they are still relevant for other compilers. This commit prevents
inlining of test_snprintf() to avoid gcc compile time checks.
2018-08-06 11:40:58 +01:00
Mohammad Azim Khan
1ec7e6f3d9
Python3 compatible generate_test_code.py
2018-08-06 11:40:58 +01:00
Mohammad Azim Khan
78befd9019
Rename generate_code.py -> generate_test_code.py
2018-08-06 11:40:58 +01:00
Mohammad Azim Khan
7eb55687c4
Set OS specific python executable name
2018-08-06 11:40:58 +01:00
Mohammad Azim Khan
b522929666
Add support for per test suite helper functions
2018-08-06 11:40:58 +01:00
Azim Khan
05d83fa406
Put parentheses around macro arguments
2018-08-06 11:40:58 +01:00
Azim Khan
36e5fac0fb
Rephrase confusing function description
2018-08-06 11:40:58 +01:00
Azim Khan
317efe85e1
Adapt new test gcm_bad_parameters() to on target testing changes
2018-08-06 11:40:58 +01:00
Azim Khan
f0e42fbd1f
Add missing documentation and fix file doc strings
2018-08-06 11:40:58 +01:00
Mohammad Azim Khan
9540261a76
Incorporated code review comments
2018-08-06 11:40:58 +01:00
Azim Khan
d61b837fac
Update unit tests for change in test suites code generator
...
Code generator has been modified to generate case statements for dependency checks and expression checks.
This commit updates the unit tests accordingly.
2018-08-06 11:40:58 +01:00
Azim Khan
b1c2d0f946
Use switch instead if if-else for dependency and expression checks.
2018-08-06 11:40:58 +01:00
Azim Khan
d61a4384d8
incorporate code review comment in embedded_test.function
2018-08-06 11:40:58 +01:00
Azim Khan
663d4702c5
Incorporate code review suggestions in mbedtls_test.py
2018-08-06 11:40:58 +01:00
Azim Khan
599cd247e6
Update unit tests for code generator and make code generator more testable.
2018-08-06 11:40:58 +01:00
Azim Khan
acc5473ac9
Use FileWrapper class in place of file where line number is required
2018-08-06 11:40:57 +01:00
Azim Khan
5e2ac1fb29
Updated generate_code.py unit tests
2018-08-06 11:40:57 +01:00
Azim Khan
4b54323bcb
Unit test generate_copy.py
2018-08-06 11:40:57 +01:00
Azim Khan
13c6bfbc2a
Gaurd test suite headers with suite dependency
...
Test suite header code was not gaurded with test suite dependency.
But some test suites have additional code in the headers section.
Variables in that section become unused if suite functions are
gaurded. Hence gaurded the headers section.
But this changed cuased missing types in get_expression() function
that was originally accessing types defined through suite headers.
Hence had to gaurd expressions code as well.
Gaurding expressions does not allow parsing the parameters when
some types or hash defs are gaurded. Hence added function
check_test() to check if test is allowed or not before parsing the
parameters.
2018-08-06 11:40:57 +01:00
Mohammad Azim Khan
8c4d5ba763
Update CMakeList.txt with new test suites code generator
2018-08-06 11:40:57 +01:00
Mohammad Azim Khan
cf32c45bfd
Add missing headers and fix name change issues
2018-08-06 11:40:57 +01:00
Azim Khan
1de892b85f
Update code as old template and generator is replaced with new one
2018-08-06 11:40:57 +01:00
Azim Khan
191e904bb2
Replace old template and code generator with new ones. Keep names
2018-08-06 11:40:57 +01:00
Azim Khan
975d97eb8b
Remove old test suite template and code generator script
2018-08-06 11:40:57 +01:00
Azim Khan
2397bbaa01
Update test generator for use of struct for hex parameters
2018-08-06 11:40:57 +01:00
Azim Khan
d30ca130e8
Combine hex parameters in a struct
2018-08-06 11:40:57 +01:00
Azim Khan
5cfc06832e
Fix name conflict in function params after hexify/unhexify change
2018-08-06 11:40:57 +01:00
Azim Khan
3e5d0004ab
Update Greentea API header
2018-08-06 11:40:57 +01:00
Azim Khan
47b40609de
Fix RSA test suite bugged by hexify/unhexify change
2018-08-06 11:40:57 +01:00
Azim Khan
392267a7c8
Fix missing data in the RSA test vectors file
2018-08-06 11:40:57 +01:00
Azim Khan
b3a103c499
Put else in it's own line
2018-08-06 11:40:57 +01:00
Azim Khan
d59391afcd
Add support for sending hex parameters
2018-08-06 11:40:57 +01:00
Azim Khan
46c9b1f196
Fix test functions and data after moving hexify/unhexify out
...
- Separate string and hex parameter as unhexify is moved out of the function. It's input should only be hex.
- Fix test mbedtls_ccm_encrypt_and_tag that grows input message buffer with tag
- Add missing expected length parameter in ECP TLS tests
- Add deleted TEST_ASSERT and mbedtls calls that got removed in script based code generation
2018-08-06 11:40:57 +01:00
Azim Khan
5e7f8df800
Print Greentea __testcase_name indicator for Greentea to mark the test
2018-08-06 11:40:57 +01:00
Azim Khan
a57a420985
Add hex parameter dispatch
2018-08-06 11:40:57 +01:00
Azim Khan
184447e7e4
Add proper handling of hex data
2018-08-06 11:40:57 +01:00
Azim Khan
f1aaec9888
Intermediate hexify out change
2018-08-06 11:40:57 +01:00
Azim Khan
9079170f6e
Adapt code for scripting out hexify/unhexify code
2018-08-06 11:40:57 +01:00
Azim Khan
3499a9e41b
Add hex comparison function
2018-08-06 11:40:57 +01:00
Azim Khan
0574632b30
Update Greentea client API calls
2018-08-06 11:40:57 +01:00
Azim Khan
ee6c0189df
Unify test setup errors for sending to host
2018-08-06 11:40:57 +01:00
Azim Khan
ec024483ae
Fix line no. directive
2018-08-06 11:40:57 +01:00
Mohammad Azim Khan
67735d540b
Fix name conflict and implicit use of functions from string.h
2018-08-06 11:40:57 +01:00
Mohammad Azim Khan
7a0d84fccc
On target test host test script
2018-08-06 11:40:57 +01:00
Mohammad Azim Khan
fff4904e6b
mbed-os test code generator
2018-08-06 11:40:57 +01:00
Mohammad Azim Khan
1f29be7241
Make target for on mbed testing
...
New target gen-mbed-test generates mebdtls tests in mbed-os test format.
i.e. a dir tree like TESTS/<testgroup>/[<sub testgroup>/]<test case>.
The TESTS dir can then be imported into mbed-os to compile tests with mbed-os.
2018-08-06 11:40:57 +01:00
Mohammad Azim Khan
94aefaf314
Optimise makefile targets
2018-08-06 11:32:29 +01:00
Simon Butcher
5f26b11ffa
Change test dependencies to RC4 from DES
...
Some tests were dependent on DES yet actually used RC4. Likely a copy and paste
error. This change fixes them.
2018-07-27 17:15:39 +01:00
Jaeden Amero
193c86425e
Update version to 2.12.0
2018-07-25 15:42:26 +01:00
Simon Butcher
729d7814c8
Merge remote-tracking branch 'public/pr/779' into development
2018-07-24 17:20:36 +01:00
Simon Butcher
2c92949e0a
Merge remote-tracking branch 'public/pr/1198' into development
2018-07-24 17:20:17 +01:00
Simon Butcher
c88c627fba
Merge remote-tracking branch 'public/pr/1658' into development
2018-07-24 17:19:10 +01:00
Ron Eldor
8dd03cd1aa
Add tests for the nist key wrapping feature
...
Add tests for Key wrapping.
Test vectors taken from the standards.
2018-07-24 16:43:20 +01:00
Simon Butcher
5ca06c763c
Merge remote-tracking branch 'public/pr/1724' into development
2018-07-24 13:32:07 +01:00
Simon Butcher
116ac43d00
Merge remote-tracking branch 'public/pr/1852' into development
2018-07-24 12:18:59 +01:00
Simon Butcher
bdf80d0953
Merge remote-tracking branch 'public/pr/1810' into development
2018-07-24 12:12:27 +01:00
Simon Butcher
a7b35434e6
Merge remote-tracking branch 'public/pr/1871' into development
2018-07-24 08:26:13 +01:00
Simon Butcher
8e6a22ac3d
Add additional i386 tests to all.sh
...
Added an additional i386 test to all.sh, to allow one test with -O0 which
compiles out inline assembly, and one to test with -01 which includes the inline
assembly.
2018-07-23 13:31:19 +01:00
Simon Butcher
7a6da6ed5e
Expand i386 all.sh tests to full config ASan builds
...
The i386 test builds were only building the default configuration and had
no address sanitisation. This commit expands the test configuration to the full
configuration in all.sh and builds with ASan for when the test suites are
executed.
2018-07-22 18:01:19 +01:00
Andres Amaya Garcia
4c761fab7f
Add test for empty app data records to ssl-opt.sh
2018-07-20 23:09:29 +01:00
Jaeden Amero
7c1258dc78
all.sh: Return error on keep-going failure
...
When calling all.sh from a script and using "--keep-going", errors were
sometimes missed due to all.sh always returning 0 "success" return code.
Return 1 if there is any failure encountered during a "keep-going" run.
2018-07-20 17:14:21 +01:00
Simon Butcher
7d728bd70e
Merge remote-tracking branch 'public/pr/1454' into development
2018-07-20 14:33:44 +01:00
Simon Butcher
922bd1efb2
Merge remote-tracking branch 'public/pr/1752' into development
2018-07-20 14:33:18 +01:00
Simon Butcher
be685ba337
Merge remote-tracking branch 'public/pr/1836' into development
2018-07-19 20:01:23 +01:00
Simon Butcher
e7aeef09ee
Merge remote-tracking branch 'public/pr/536' into development
2018-07-10 15:24:26 +01:00
Simon Butcher
727325baa7
Merge remote-tracking branch 'public/pr/1788' into development
2018-07-10 14:54:52 +01:00