CNA-VGAP-038: No C++ storage test writes bytes through a StorageContainer stream and reads them back
Evidence basis: source-verified at the pinned commit; tests exist (not executed for this page). Claims on this page were checked by reading the CNA source at commit 009d40f5; unless a sentence says otherwise, nothing here was built or executed. Nothing on this page was executed unless the Evidence section says so.
StorageDeviceTests.cpp checks containment, directory operations and file existence; the only byte round trip is the C ABI smoke test, which runs only in builds with the C API.
- Identifier
CNA-VGAP-038- Category
- Verification gap
- Subsystem
- Testing & evidence
- Status
- Open
- Verified against
- CNA
009d40f5(009d40f5dd085c4e674d3479675fac84b12b3e0a) - Evidence basis
- Source-verified: read at TARGET, not executed
- Tests touching this area
- Yes: see Current tests
- Affected contract
- StorageContainer::CreateFile / OpenFile streams
Expected behaviour
The core promise of save storage, that written bytes come back unchanged, should be pinned by the module's own tests.
Actual behaviour at TARGET
StorageDeviceTests.cpp creates files and resets the streams without writing (for example the contained-path case that creates save.bin and checks FileExists); StorageSmoke.c writes and reads through the C routes, and the C API is off in every preset and CI workflow (CNA-VGAP-053).
Source locations
modules/storage/tests/Microsoft/Xna/Framework/Storage/StorageDeviceTests.cpp— file operations without a write/read round tripmodules/c-api/tests/pure_c/StorageSmoke.c— the only byte round trip, C API builds only
Evidence
Checked by reading at 009d40f5; not executed.
Focused reproduction
No focused reproduction is known. Nothing has been invented here; the evidence above is what exists.
Current tests
Containment, directory and existence tests.
Regression test
Write a byte pattern through CreateFile, reopen with OpenFile and compare, including a non-ASCII file name.
Blast radius
Evidence only.
Workaround
No workaround is known.
Related pages
The same subject is explained at several altitudes. These are the neighbouring pages at each one.
- User guide
- Storage guide
- Internals
- Storage internals: tests
- Known issues
- Verification gap index