The unit testing API is not logically correct, instead of using the keyword unit_test for the structure that holds a function to execute and/or assert, the terminology should be unit_component emphasizing the software unit as the most primitive part of the software architecture, together with the addition of software_unit structure that holds a multifaceted_buffer, and software unit builder inferface to build software units using unit components.