Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

More tests for json_array/json_tuple/json_key_value_array/json_date/json_checked_number and some bugfixes #445

Merged
merged 10 commits into from
Sep 2, 2024

Conversation

beached
Copy link
Owner

@beached beached commented Sep 2, 2024

No description provided.

Deleted 'daw_json_parse_element_iterator.h' as it is no longer needed.
Minor formatting adjustments made in 'daw_json_option_bits.h'
Updated '.gitignore' to include another cmake build directory pattern.
Introduce a new test for `json_checked_number` in the test suite to ensure proper functionality and error handling. Additionally, enhance iterator handling in `daw_json_default_constuctor.h` by supporting separate `First` and `Last` iterator types, along with corresponding improvements in the code structure, including constructors and `std::vector` operations.
Implemented validation checks for day, month, hour, minute, and second in JSON timestamps. Also added new test cases for JSON date and nullable date to ensure correctness.
Introduced new tests for deserializing JSON tuples and optional tuples using daw_json_link. Updated the CMake configuration to include the new test files and ensure proper compiler settings and dependencies are applied.
Added a new executable for testing JSON arrays to `CMakeLists.txt`, and created corresponding test cases in `test_json_array.cpp`. Also, refactored some traits and added necessary static assertions to improve code safety and maintainability.
Introduce new test cases for handling JSON key-value arrays and nullable key-value arrays. Implement necessary changes in the parsing logic and link the new tests in the CMake configuration.
Introduce a new test for parsing raw JSON values, including handling nullable raw values. Update CMake configuration to include the new test executable and its dependencies.
Wrapped code segments with `#if defined(DAW_USE_EXCEPTIONS)` to conditionally compile exception handling logic in `test_json_checked_number.cpp` and `test_json_date.cpp`. This ensures that exception-specific logic is only included when exceptions are enabled.
Moved a static_assert statement inside the #endif block to ensure it is only compiled when constexpr optional copy is available.
Adjusted lambda captures to fix warnings in `daw_json_schema.h` and `daw_json_link_types.h`. Modified CMakeLists to exclude specific targets from all build configurations. Removed unused structs from `daw_json_link_types.h`.
@beached beached merged commit 45a4bc1 into release Sep 2, 2024
84 of 92 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant