----------------------------------------
-----------Sun Devil Rocketry-----------
-----------Unit Test Results------------
----------------------------------------

----------------------------------------
------------Test Environment------------
----------------------------------------

--General Build Information--
Test Name:        flash_appa
Test Type:        Unit Test
Build Date:       Oct 10 2026
Build Time:       23:26:24
Run Date:         Oct 10 2026
Run Time:         23:26:24
ISO C?:           1
C Standard:       201710

--GNU C Compiler (GCC) Info--
GCC Version:      13.3.0

--GCOVR Info--
GCOVR Version:    8.6

----------------------------------------
----------------Results-----------------
----------------------------------------


--BEGIN TEST GROUP: Check test environment--

Test Environment: Release build
Actual: TRUE | Expected: TRUE

Test Environment: ISO C standard is C17 or greater
Actual: 201710 | Expected: 201700

Test Environment: Compiler at/above minimum GCC version
Actual: 13 | Expected: 8

Test Environment: Compiler at/below maximum GCC version
Actual: 13 | Expected: 15

Test Environment: Coverage tool at/above minimum GCOVR version
Actual: 8 | Expected: 7

Test Environment: Coverage tool at/below maximum GCOVR version
Actual: 8 | Expected: 8

--TEST GROUP RESULTS:--
Group Passes: 6
Group Fails:  0
--END TEST GROUP: Check test environment--


--BEGIN TEST GROUP: Write Preset Test--

Test that write_preset returns FLASH_OK
Actual: 0 | Expected: 0

Test that save bit was stored at the beginning of flash
Actual: 1 | Expected: 1

Test that preset data was written to flash
Actual (address): 0x7a192202 | Expected (address): 0x7a191f20

--TEST GROUP RESULTS:--
Group Passes: 3
Group Fails:  0
--END TEST GROUP: Write Preset Test--


--BEGIN TEST GROUP: Read Preset Test--

-> BEGIN TEST CASE 0: Read preset with existing preset data

Test that read preset correctly loads the config preset
Actual (address): 0x7a191f20 | Expected (address): 0xf2e23760

Test for expected return value
Actual: 0 | Expected: 0

-> END TEST CASE

-> BEGIN TEST CASE 1: Read preset with no existing preset data

Test that read preset correctly loads the config preset
Actual (address): 0x7a191f20 | Expected (address): 0xf2e23760

Test for expected return value
Actual: 19 | Expected: 19

-> END TEST CASE

-> BEGIN TEST CASE 2: Error: flash fail

Test that read preset correctly loads the config preset
Actual (address): 0x7a191f20 | Expected (address): 0xf2e23760

Test for expected return value
Actual: 1 | Expected: 1

-> END TEST CASE

--TEST GROUP RESULTS:--
Group Passes: 6
Group Fails:  0
--END TEST GROUP: Read Preset Test--


--BEGIN TEST GROUP: Store Frame Test--

Test that the time was placed into flash memory
Actual: 123 | Expected: 123

Test that data was stored
Actual (address): 0x7a19227c | Expected (address): 0x7a191f80

Test that the address was set correctly
Actual: 236 | Expected: 236

--TEST GROUP RESULTS:--
Group Passes: 3
Group Fails:  0
--END TEST GROUP: Store Frame Test--


--BEGIN TEST GROUP: Flash Erase Preserve Preset Test--

Test that preset data was preserved
Actual (address): 0x7a192202 | Expected (address): 0x7a191f20

Test that the rest of the memory was cleared
Actual: 1 | Expected: 1

Test for expected return
Actual: 0 | Expected: 0

--TEST GROUP RESULTS:--
Group Passes: 3
Group Fails:  0
--END TEST GROUP: Flash Erase Preserve Preset Test--


--BEGIN TEST GROUP: Get Sensor Frame Test--

-> BEGIN TEST CASE 0: Sensor frame size initialized

Test for expected get_sensor_frame return
Actual: 0 | Expected: 0

Test that save bit is placed in buffer
Actual: 1 | Expected: 1

Test that time is placed in buffer
Actual (address): 0xf2e236a2 | Expected (address): 0xf2e2379c

-> END TEST CASE

-> BEGIN TEST CASE 1: Incorrect/uninitialized sensor frame size

Test for expected get_sensor_frame return
Actual: 20 | Expected: 20

Test that save bit is placed in buffer
Actual: 1 | Expected: 1

Test that time is placed in buffer
Actual (address): 0xf2e236a2 | Expected (address): 0xf2e2379c

-> END TEST CASE

--TEST GROUP RESULTS:--
Group Passes: 6
Group Fails:  0
--END TEST GROUP: Get Sensor Frame Test--

----------------------------------------
-------------Test Complete--------------
----------------------------------------
Passes: 27
Fails:  0
Result: PASS
----------------------------------------
