| 665 | } |
| 666 | |
| 667 | int runUnityTests(void) { |
| 668 | UNITY_BEGIN(); |
| 669 | |
| 670 | // Suite-level setup |
| 671 | RNS::Utilities::Memory::dump_heap_stats(); |
| 672 | size_t pre_memory = RNS::Utilities::Memory::heap_available(); |
| 673 | TRACEF("testBytes: pre-mem: %u", pre_memory); |
| 674 | |
| 675 | // Run tests |
| 676 | RUN_TEST(testBytesMain); |
| 677 | RUN_TEST(testCowBytes); |
| 678 | RUN_TEST(testBytesConversion); |
| 679 | RUN_TEST(testBytesResize); |
| 680 | RUN_TEST(testBytesStream); |
| 681 | RUN_TEST(testBytesReserve); |
| 682 | RUN_TEST(testFind); |
| 683 | RUN_TEST(testCompare); |
| 684 | RUN_TEST(testConcat); |
| 685 | RUN_TEST(testIndex); |
| 686 | |
| 687 | // Bytes edge cases |
| 688 | RUN_TEST(test_assignHex_even_length); |
| 689 | RUN_TEST(test_assignHex_odd_length); |
| 690 | RUN_TEST(test_assignHex_single_char); |
| 691 | RUN_TEST(test_assignHex_empty); |
| 692 | RUN_TEST(test_appendHex_odd_length); |
| 693 | RUN_TEST(test_hex_roundtrip_stability); |
| 694 | RUN_TEST(test_mid_large_len); |
| 695 | RUN_TEST(test_mid_zero_size_bytes); |
| 696 | RUN_TEST(test_empty_collection); |
| 697 | |
| 698 | // Suite-level teardown |
| 699 | size_t post_memory = RNS::Utilities::Memory::heap_available(); |
| 700 | size_t diff_memory = (int)pre_memory - (int)post_memory; |
| 701 | TRACEF("testBytes: post-mem: %u", post_memory); |
| 702 | TRACEF("testBytes: diff-mem: %u", diff_memory); |
| 703 | TEST_ASSERT_EQUAL_size_t(0, diff_memory); |
| 704 | |
| 705 | return UNITY_END(); |
| 706 | } |
| 707 | |
| 708 | // For native dev-platform or for some embedded frameworks |
| 709 | int main(void) { |