Skip to content

Releases: threeal/assertion-cmake

Version 2.0.0

23 Oct 10:20
v2.0.0
3c43102
Compare
Choose a tag to compare

What's Changed

  • Modified the add test function as follows:
    • Renamed asertion_add_test to add_cmake_script_test.
    • Added a new DEFINITIONS option to specify predefined variables for the test scripts.
    • Modified the created test to process the given script directly, without using the Assertion.cmake module. This effectively removes support for the Assertion.cmake module to include other modules when executed in script mode.
    • Allowed the test file to be specified using an absolute path.
    • Asserted that the test file exists before adding the test.
    • Prevented the function from being executed in script mode.
  • Removed the assert_fatal_error function and replaced it with a new assert_call function, which behaves similarly but also supports asserting warnings.
  • Modified the assert_execute_process function as follows:
    • Renamed the OUTPUT option to EXPECT_OUTPUT.
    • Renamed the ERROR option to EXPECT_ERROR.
    • Added support to specify a comparator when asserting output and error.
    • Added a new EXPECT_FAIL option to assert whether the executed process failed, without asserting the error message.
  • Removed automatic policy settings from the assert function, requiring policies or the CMake version to be specified prior to including the module.
  • Added a new ASSERTION_VERSION variable, which contains the version of the included Assertion.cmake module.
  • Removed the ASSERTION_LIST_DIR variable; this can now be obtained using the RESULT option in the include function instead.
  • Code improvements and other bug fixes.
  • Updated function documentation and usage guide.
  • Development changes:
    • Utilized CMake presets and updated build rules.
    • Added support for packaging the project using CPack.
    • Organized and refactored unit tests.
    • Updated GitHub Actions workflow configuration.
    • Updated development dependencies.

Full Changelog: v1.0.0...v2.0.0

Version 1.0.0

11 Jul 08:39
bd0261e
Compare
Choose a tag to compare

What's Changed

New Features

  • Modify Fatal Error Assertion to Match the Expected Error by @threeal in #113
  • Allow Stacking Sections by @threeal in #117
  • Allow Execute Process Assertion to Accept Output and Error as Multiple Values by @threeal in #119
  • Allow Section to Accept Name as Multiple Values by @threeal in #123
  • Allow Module to Optionally Include Other Modules by @threeal in #121 and #156
  • Add ASSERTION_LIST_FILE Variable by @threeal in #125
  • Modify Format Message Function Value Determination Behavior by @threeal in #129
  • Add Fail Macro by @threeal in #131
  • Assert Fatal Error Message Outside the Mocked Message by @threeal in #135
  • Add Test Creation Function by @threeal in #127
  • Modify Fail Macro to Auto Insert Colon by @threeal in #141
  • Modify Name to Be Optional When Adding CMake Test by @threeal in #143
  • Modify Section to Print Once by @threeal in #147
  • Add Support for Formatting Command Existence Assertion Errors by @threeal in #160
  • Add Support for Formatting Executable Path Assertion Errors by @threeal in #165
  • Add Support for Formatting Policy Existence Assertion Errors by @threeal in #169
  • Add Support for Formatting Target Existence Assertion Errors by @threeal in #173
  • Add Support for Formatting Test Existence Assertion Errors by @threeal in #175
  • Add Support for Formatting List Element Existence Assertion Errors by @threeal in #177
  • Add Support for Formatting Path Readability Assertion Errors by @threeal in #179
  • Add Support for Formatting Path Writability Assertion Errors by @threeal in #181
  • Add Support for Formatting Symbolic Link Path Assertion Errors by @threeal in #183
  • Add Support for Formatting Absolute Path Assertion Errors by @threeal in #185
  • Allow Fail Function to Handle Consecutive Variables by @threeal in #193
  • Allow Fail Function to Expand Twice by @threeal in #191
  • Add Support for Formatting Path Equality Assertion Errors by @threeal in #198
  • Add Support for Formatting File Recency Assertion Errors by @threeal in #200
  • Improve Support for Formatting String Equality Assertion Errors by @threeal in #196
  • Add Support for Formatting Number Equality Assertion Errors by @threeal in #207 and #211
  • Add Support for Formatting Version Equality Assertion Errors by @threeal in #209

Bug Fixes

  • Fix Assert Fatal Error if No Fatal Error Received by @threeal in #133
  • Fix Assert Fatal Error if Message Has Multiple Arguments by @threeal in #137
  • Ensure Functions Return After Fail by @threeal in #158
  • Use Quotation Marks for String Equality Check by @threeal in #162
  • Handle CMake Policy in Each Function by @threeal in #202

Documentation Changes

  • Audit CMake Module Documentation and Comments by @threeal in #151
  • Add Documentation Section in Readme by @threeal in #149
  • Add Example For API Reference in Readme by @threeal in #171
  • Improve Project Description and Key Features by @threeal in #167
  • Improve Usage Guide in Readme by @threeal in #189
  • Explain Assert Function Internally Uses If Function in Documentation by @threeal in #194

Development Changes

Full Changelog: v0.3.0...v1.0.0

Version 0.3.0

24 Jun 06:24
ceefb45
Compare
Choose a tag to compare

What's Changed

New Features

  • Refactor Assertion Condition to Use Else by @threeal in #60, #62, #66, and #68
  • Improve Assertion Message by @threeal in #64
  • Modify Message Assertion to Only Assert Fatal Errors by @threeal in #71
  • Modify Assert Fatal Error Behavior by @threeal in #72
  • Adjust Assertion Message When Inputs Are Variables by @threeal in #80
  • Add Section Functions by @threeal in #84
  • Merge Mock Message Function into Fatal Error Assertion by @threeal in #76 amd #88
  • Show Error in Execute Process Assertion by @threeal in #90
  • Assert Fatal Error Message within Mocked Message by @threeal in #94
  • Automatically Include Module When Including Project by @threeal in #97 and #106
  • Allow Execute Process Assertion to Be Called Without COMMAND Option by @threeal in #82
  • Allow Fatal Error Assertions to Accept Expected Message as Multiple Values by @threeal in #101

Bug Fixes

  • Improve Function Arguments Handling by @threeal in #58
  • Fix Mock Message Level by @threeal in #74
  • Fix Argument Requirements for Mocked Message Function by @threeal in #92

Documentation Changes

  • Format Function Documentation Comment by @threeal in #86

Development Changes

Full Changelog: v0.2.0...v0.3.0

Version 0.2.0

28 May 09:35
2a2119d
Compare
Choose a tag to compare

What's Changed

Module Changes

  • Add Regular Expression Match Assertion Function by @threeal in #35
  • Add Execute Process Assertion Functions by @threeal in #37
  • Add Expected Output Option to Execute Process Assertion Function by @threeal in #40
  • Merge All Assertion Functions Into One Function by @threeal in #42 and #43
  • Handle String Assertion if Given Variable Instead of String by @threeal in #45
  • Separate Message and Execute Process Assertions by @threeal in #47, #49, and #51
  • Modify Execute Process Result Assertion by @threeal in #53

Documentation Changes

  • Update Readme to Showcase Execute Process Assertion by @threeal in #55

Development Changes

  • Trigger Deploy Workflow on Push Tag Events by @threeal in #33
  • Bump actions/checkout from 4.1.5 to 4.1.6 by @dependabot in #38

Full Changelog: v0.1.0...v0.2.0

Version 0.1.0

07 May 10:43
b6e5466
Compare
Choose a tag to compare

What's Changed

Module Changes

  • Add Boolean Assertion Functions by @threeal in #4
  • Add Variable Defined Assertion Functions by @threeal in #10
  • Add String Equality Assertion Functions by @threeal in #12
  • Add Mock Message Function by @threeal in #8
  • Add Message Assertion Function by @threeal in #14
  • Add Path Exists Assertion Function by @threeal in #18
  • Add Path Is Directory Assertion Functions by @threeal in #20
  • Convert Mock Message Function to Behave Within a Scope by @threeal in #22
  • Prepend New Entry of CMake Module Path by @threeal in #28

Documentation Changes

Development Changes

New Contributors

Full Changelog: https://github.com/threeal/assertion-cmake/commits/v0.1.0