Skip to content

cp_acp: fix bugs in to_string.h and utf16_to_acp_impl, add tests#164

Merged
EmJayGee merged 5 commits intomainfrom
micgrier/cp_acp
Feb 25, 2026
Merged

cp_acp: fix bugs in to_string.h and utf16_to_acp_impl, add tests#164
EmJayGee merged 5 commits intomainfrom
micgrier/cp_acp

Conversation

@EmJayGee
Copy link
Copy Markdown
Collaborator

Changes to clean up how cp_acp conversions are done

Michael Grier added 5 commits February 24, 2026 20:55
…w_to_span specialization, remove dead code
…r inheritance and operator<=>, expand tests
… createq event_kind, fix do_set_wait_until typo+cast, fix filetime_clock to_sys and now, expand tests
Add 20 new tests across the three test files:

event (6 new):
- IsValid: checks is_valid() on null/valid/reset event
- MoveAssign: verifies move leaves source null and correct kind
- CombinedFlagsInitialSetManualReset: initial_set|manual_reset
- SetEventStateSetThenReset: set_event_state with WaitForSingleObject
- AutoResetEventClearsAfterWait: auto-reset clears event after consume
- SignalAndWaitAcrossThreads: threadpool callback signals event

registry (8 new):
- HkeyDefaultIsInvalid: default hkey is not valid/bool-true
- HkeyPredefinedGet: get() round-trips the raw HKEY_CURRENT_USER value
- HkeySwap: swap exchanges ownership of two opened hkeys
- OpenqHappyPath: openq(HKCU\Software) succeeds, hkey is valid
- OpenqFailurePath: openq on nonexistent key returns error, hkey stays null
- OpenThrowsOnSuccess: open() succeeds and hkey is valid afterward
- OpenThrowsOnFailure: open() on nonexistent key throws an exception
- OpenqFromHkeyBase: openq(hkey&, ...) opens sub-key from opened root

threadpool (6 new):
- TpWorkMoveAssign: move-assign transfers ownership
- TpWorkReset: reset() clears the tp_work
- TpTimerConstructAndIsSet: construction + is_set() before arming
- TpTimerSetAndCancel: arm far-future timer, verify is_set, cancel
- TpTimerFiresAndWait: timer fires at epoch, event-based sync
- TpWaitConstructAndSetWait: set_wait on pre-signaled event fires cb

36/36 debug and release
@EmJayGee EmJayGee merged commit 1f42181 into main Feb 25, 2026
5 checks passed
@EmJayGee EmJayGee deleted the micgrier/cp_acp branch February 25, 2026 03:23
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