CUTe
1.0
User Guide
1. Overview
2. Basic concepts
3. Typical Workflow
4. Writing tests
4.1. Test case
4.1.1. Test definition
4.1.2. Fixture operations
4.1.3. Test timeout
4.1.4. Test file scope
4.2. Test hierarchy
4.2.1. Group definition
4.2.2. Suite definition
4.2.3. Fixture inheritance
4.2.4. Timeout inheritance
4.2.5. Suite file scope
4.3. Test assertion
4.4. Mocking
4.5. Running tests
4.5.1. Main entry point
4.5.2. Low-level runner
4.5.2.1. Setting up runner
4.5.2.2. Running suites
4.5.2.3. Listing suites
4.5.3. Building tests
4.5.4. Command line
5. Test reports
5.1. Console
5.1.1. Terse
5.1.2. Verbose
5.1.3. Silent
5.1.4. Statistics
5.2. JUnit XML
5.3. TAP
5.4. Test result
Integration Guide
1. Overview
2. Prerequisites
3. Getting help
4. Build Workflow
4.1. Preparation phase
4.2. Configure phase
4.3. Build phase
4.4. Install phase
4.5. Alternative staged install phase
4.6. Documentation generation
API
1. Overview
2. Build configuration
3. Functional domains
3.1. Test definition
3.2. Fixture operations
3.3. Timeouts
3.4. Group definition
3.5. Suite definition
3.6. Test assertion
3.6.1. Basic assertion
3.6.2. Booleans
3.6.3. Signed integers
3.6.4. Unsigned integers
3.6.5. Floating point numbers
3.6.6. Strings
3.6.7. Pointers
3.6.8. Memory areas
3.7. Mocking
3.7.1. Assertion expectation
3.7.2. Call expectation
3.7.3. Parameter expectation
3.7.3.1. Booleans
3.7.3.2. Signed integers
3.7.3.3. Unsigned integers
3.7.3.4. Floating point numbers
3.7.3.5. Strings
3.7.3.6. Pointers
3.7.3.7. Memory areas
3.7.4. Return value expectation
3.8. Running tests
4. Reference
4.1. Configuration macros
4.1.1. CONFIG_CUTE_INTERN_ASSERT
4.1.2. CONFIG_CUTE_UTEST
4.2. Macros
4.2.1. CUTE_CONFIG_INIT
4.2.2. CUTE_DFLT_TMOUT
4.2.3. CUTE_FLT_RANGE
4.2.4. CUTE_FLT_SET
4.2.5. CUTE_GROUP
4.2.6. CUTE_GROUP_DEFN
4.2.7. CUTE_GROUP_DECL
4.2.8. CUTE_GROUP_STATIC
4.2.9. CUTE_GROUP_EXTERN
4.2.10. CUTE_INHR_SETUP
4.2.11. CUTE_INHR_TEARDOWN
4.2.12. CUTE_INHR_TMOUT
4.2.13. CUTE_MAIN
4.2.14. CUTE_NONE_TMOUT
4.2.15. CUTE_NULL_SETUP
4.2.16. CUTE_NULL_TEARDOWN
4.2.17. CUTE_PTR_RANGE
4.2.18. CUTE_PTR_SET
4.2.19. CUTE_REF
4.2.20. CUTE_SINT_RANGE
4.2.21. CUTE_SINT_SET
4.2.22. CUTE_STR_SET
4.2.23. CUTE_SUITE
4.2.24. CUTE_SUITE_DEFN
4.2.25. CUTE_SUITE_DECL
4.2.26. CUTE_SUITE_STATIC
4.2.27. CUTE_SUITE_EXTERN
4.2.28. CUTE_TEST
4.2.29. CUTE_TEST_DECL
4.2.30. CUTE_TEST_DEFN
4.2.31. CUTE_TEST_EXTERN
4.2.32. CUTE_TEST_STATIC
4.2.33. CUTE_UINT_RANGE
4.2.34. CUTE_UINT_SET
4.2.35. cute_check_assert
4.2.36. cute_check_bool
4.2.37. cute_check_flt
4.2.38. cute_check_flt_range
4.2.39. cute_check_flt_set
4.2.40. cute_check_hex
4.2.41. cute_check_hex_range
4.2.42. cute_check_hex_set
4.2.43. cute_check_mem
4.2.44. cute_check_ptr
4.2.45. cute_check_ptr_range
4.2.46. cute_check_ptr_set
4.2.47. cute_check_sint
4.2.48. cute_check_sint_range
4.2.49. cute_check_sint_set
4.2.50. cute_check_str
4.2.51. cute_check_str_set
4.2.52. cute_check_uint
4.2.53. cute_check_uint_range
4.2.54. cute_check_uint_set
4.2.55. cute_expect_assertion
4.2.56. cute_expect_bool_parm
4.2.57. cute_expect_bool_retval
4.2.58. cute_expect_call
4.2.59. cute_expect_flt_parm
4.2.60. cute_expect_flt_range
4.2.61. cute_expect_flt_retval
4.2.62. cute_expect_flt_set
4.2.63. cute_expect_hex_parm
4.2.64. cute_expect_hex_range
4.2.65. cute_expect_hex_set
4.2.66. cute_expect_mem_parm
4.2.67. cute_expect_ptr_parm
4.2.68. cute_expect_ptr_range
4.2.69. cute_expect_ptr_retval
4.2.70. cute_expect_ptr_set
4.2.71. cute_expect_sint_parm
4.2.72. cute_expect_sint_range
4.2.73. cute_expect_sint_retval
4.2.74. cute_expect_sint_set
4.2.75. cute_expect_str_parm
4.2.76. cute_expect_str_retval
4.2.77. cute_expect_str_set
4.2.78. cute_expect_uint_parm
4.2.79. cute_expect_uint_range
4.2.80. cute_expect_uint_retval
4.2.81. cute_expect_uint_set
4.2.82. cute_fail
4.2.83. cute_mock_bool_parm
4.2.84. cute_mock_bool_retval
4.2.85. cute_mock_call
4.2.86. cute_mock_flt_parm
4.2.87. cute_mock_flt_retval
4.2.88. cute_mock_hex_parm
4.2.89. cute_mock_mem_parm
4.2.90. cute_mock_ptr_parm
4.2.91. cute_mock_ptr_retval
4.2.92. cute_mock_sint_parm
4.2.93. cute_mock_sint_retval
4.2.94. cute_mock_str_parm
4.2.95. cute_mock_str_retval
4.2.96. cute_mock_uint_parm
4.2.97. cute_mock_uint_retval
4.2.98. cute_skip
4.3. Enums
4.3.1. cute_config_report
4.3.2. cute_config_tty
4.4. Structs
4.4.1. cute_config
4.4.2. cute_flt_range
4.4.3. cute_flt_set
4.4.4. cute_ptr_range
4.4.5. cute_ptr_set
4.4.6. cute_sint_range
4.4.7. cute_sint_set
4.4.8. cute_str_set
4.4.9. cute_uint_range
4.4.10. cute_uint_set
4.5. Functions
4.5.1. cute_init
4.5.2. cute_fini
4.5.3. cute_mock_assert
4.5.4. cute_run_suite
4.5.5. cute_show_suite
Appendix
Licensing
GNU LESSER GENERAL PUBLIC LICENSE
Additional Definitions
Exception to Section 3 of the GNU GPL
Conveying Modified Versions
Object Code Incorporating Material from Library Header Files
Combined Works
Combined Libraries
Revised Versions of the GNU Lesser General Public License
GNU GENERAL PUBLIC LICENSE
Preamble
TERMS AND CONDITIONS
Definitions
Source Code
Basic Permissions
Protecting Users’ Legal Rights From Anti-Circumvention Law
Conveying Verbatim Copies
Conveying Modified Source Versions
Conveying Non-Source Forms
Additional Terms
Termination
Acceptance Not Required for Having Copies
Automatic Licensing of Downstream Recipients
Patents
No Surrender of Others’ Freedom
Use with the GNU Affero General Public License
Revised Versions of this License
Disclaimer of Warranty
Limitation of Liability
Interpretation of Sections 15 and 16
How to Apply These Terms to Your New Programs
Todo
Index
CUTe
Todo
View page source
Todo