Option to disable all tag processing; Minor bug fix to QCBORDecode_GetDecimalFraction()
This allows disabling of all tag decoding saving about 400 bytes of object code (a lot!).
This also fixes a bug where QCBORDecode_GetDecimalFraction() and
QCBORDecode_GetDecimalFractionBig() would fail on input CBOR that is not a tag when it should succeed.
* Check point work on disabling tags
* Check point tag disable
* Checkpoint work on disabling tags
* check point
* More tests are passing
* Check point ; down to only 3 tests not passing
* all tests passing
* documentation fixes
* minor tidying
* more tidiness
* More documentation
* Check point -- more tidiness
* Check point new mant/exp tests
* main source is probably done; more testing to do
* Documentation fix
* Improve testing of mantissa and exponent a lot
* Final clean up
Co-authored-by: Laurence Lundblade <lgl@securitytheory.com>
diff --git a/test/run_tests.c b/test/run_tests.c
index f28f526..f2baaf1 100644
--- a/test/run_tests.c
+++ b/test/run_tests.c
@@ -99,8 +99,11 @@
TEST_ENTRY(BasicEncodeTest),
TEST_ENTRY(NestedMapTest),
TEST_ENTRY(BignumParseTest),
+#ifndef QCBOR_DISABLE_TAGS
TEST_ENTRY(OptTagParseTest),
TEST_ENTRY(DateParseTest),
+ TEST_ENTRY(DecodeTaggedTypeTests),
+#endif /* QCBOR_DISABLE_TAGS */
TEST_ENTRY(SpiffyDateDecodeTest),
TEST_ENTRY(ShortBufferParseTest2),
TEST_ENTRY(ShortBufferParseTest),
@@ -136,12 +139,12 @@
TEST_ENTRY(EncodeLengthThirtyoneTest),
TEST_ENTRY(CBORSequenceDecodeTests),
TEST_ENTRY(IntToTests),
- TEST_ENTRY(DecodeTaggedTypeTests),
TEST_ENTRY(PeekAndRewindTest),
-#ifndef QCBOR_DISABLE_EXP_AND_MANTISSA
- TEST_ENTRY(EncodeLengthThirtyoneTest),
+#ifndef QCBOR_DISABLE_EXP_AND_MANTISSA
TEST_ENTRY(ExponentAndMantissaDecodeTests),
+#ifndef QCBOR_DISABLE_TAGS
TEST_ENTRY(ExponentAndMantissaDecodeFailTests),
+#endif /* QCBOR_DISABLE_TAGS */
TEST_ENTRY(ExponentAndMantissaEncodeTests),
#endif /* QCBOR_DISABLE_EXP_AND_MANTISSA */
TEST_ENTRY(ParseEmptyMapInMapTest),