MCPcopy Create free account
hub / github.com/DeusData/codebase-memory-mcp / prune_fixture_setup

Function prune_fixture_setup

tests/test_watcher.c:215–240  ·  view source on GitHub ↗

Returns false (with partial state cleaned up) if setup failed. */

Source from the content-addressed store, hash-verified

213
214/* Returns false (with partial state cleaned up) if setup failed. */
215static bool prune_fixture_setup(prune_fixture_t *f, const char *grace_s) {
216 snprintf(f->rootdir, sizeof(f->rootdir), "/tmp/cbm_watcher_stale_root_XXXXXX");
217 if (!cbm_mkdtemp(f->rootdir)) {
218 return false;
219 }
220 snprintf(f->cachedir, sizeof(f->cachedir), "/tmp/cbm_watcher_stale_cache_XXXXXX");
221 if (!cbm_mkdtemp(f->cachedir)) {
222 th_rmtree(f->rootdir);
223 return false;
224 }
225
226 f->had_cache_dir = cbm_safe_getenv("CBM_CACHE_DIR", f->saved_cache_dir,
227 sizeof(f->saved_cache_dir), NULL) != NULL;
228 f->had_grace = cbm_safe_getenv("CBM_WATCHER_PRUNE_GRACE_S", f->saved_grace,
229 sizeof(f->saved_grace), NULL) != NULL;
230 cbm_setenv("CBM_CACHE_DIR", f->cachedir, 1);
231 cbm_setenv("CBM_WATCHER_PRUNE_GRACE_S", grace_s, 1);
232
233 snprintf(f->db_path, sizeof(f->db_path), "%s/stale-project.db", f->cachedir);
234 snprintf(f->wal_path, sizeof(f->wal_path), "%s/stale-project.db-wal", f->cachedir);
235 snprintf(f->shm_path, sizeof(f->shm_path), "%s/stale-project.db-shm", f->cachedir);
236 th_write_file(f->db_path, "db\n");
237 th_write_file(f->wal_path, "wal\n");
238 th_write_file(f->shm_path, "shm\n");
239 return true;
240}
241
242static void prune_fixture_teardown(prune_fixture_t *f) {
243 if (f->had_cache_dir) {

Callers 1

test_watcher.cFile · 0.85

Calls 5

cbm_mkdtempFunction · 0.85
th_rmtreeFunction · 0.85
cbm_safe_getenvFunction · 0.85
cbm_setenvFunction · 0.85
th_write_fileFunction · 0.85

Tested by

no test coverage detected