CultLib/tests/GameCult.Caching.Tests/Fixtures/pre-cut2
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Meta Vens b6905c2c1c Pin stores written before Cut 2 with checked-in fixtures
Fixtures were produced by CultLib 0db1fe5 from a temporary worktree: a v4
directory store and a v1 single-file store holding the same three records.
Tests reopen both and assert every value, and assert the directory store
refuses v1, v1.directory, v2 and v3 manifests without touching the bytes.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-13 17:17:14 +02:00
..
directory-v4 Pin stores written before Cut 2 with checked-in fixtures 2026-09-13 17:17:14 +02:00
single-file-v1 Pin stores written before Cut 2 with checked-in fixtures 2026-09-13 17:17:14 +02:00
README.md Pin stores written before Cut 2 with checked-in fixtures 2026-09-13 17:17:14 +02:00

Pre-Cut 2 store fixtures

Bytes written by CultLib commit 0db1fe5 ("Apply Soul fixes to the store composition docs and routing tests"), the last commit before Cut 2 changed the MessagePack stores. They prove stores written before Cut 2 still open.

Produced from a temporary git worktree at 0db1fe5: a throwaway NUnit fixture in that worktree's tests/GameCult.Caching.Tests, referencing its own Caching projects and generator, upserted three records into a fresh CultCache and called FlushAllBackingStores(). The worktree was removed afterwards.

  • directory-v4/store.cc plus directory-v4/store.cc.records/*.msgpack: new DirectoryMessagePackBackingStore(manifest), format cultcache.store.v4.directory-content-addressed-pages. The empty .commit.lock lease file was not copied.
  • single-file-v1/store.msgpack: new SingleFileMessagePackBackingStore(file), format cultcache.store.v1.

Both stores hold the same records. Document types are defined identically in ../../PreCut2FixtureDocuments.cs:

Key Type (schema) Values
item:anvil PreCut2FixtureItem (fixtures.precut2.item.v1) Name = "anvil", Count = 3
item:bellows PreCut2FixtureItem (fixtures.precut2.item.v1) Name = "bellows", Count = 42
note:origin PreCut2FixtureNote (fixtures.precut2.note.v1) Text = "written before cut 2"

Do not regenerate these from a newer commit; their value is that they predate Cut 2. Tests copy them to a temp directory before opening.