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

Function prune_fixture_setup

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

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

Source from the content-addressed store, hash-verified

238
239/* Returns false (with partial state cleaned up) if setup failed. */
240static bool prune_fixture_setup(prune_fixture_t *f, const char *grace_s) {
241 snprintf(f->rootdir, sizeof(f->rootdir), "/tmp/cbm_watcher_stale_root_XXXXXX");
242 if (!cbm_mkdtemp(f->rootdir)) {
243 return false;
244 }
245 snprintf(f->cachedir, sizeof(f->cachedir), "/tmp/cbm_watcher_stale_cache_XXXXXX");
246 if (!cbm_mkdtemp(f->cachedir)) {
247 th_rmtree(f->rootdir);
248 return false;
249 }
250
251 f->had_cache_dir = cbm_safe_getenv("CBM_CACHE_DIR", f->saved_cache_dir,
252 sizeof(f->saved_cache_dir), NULL) != NULL;
253 f->had_grace = cbm_safe_getenv("CBM_WATCHER_PRUNE_GRACE_S", f->saved_grace,
254 sizeof(f->saved_grace), NULL) != NULL;
255 cbm_setenv("CBM_CACHE_DIR", f->cachedir, 1);
256 cbm_setenv("CBM_WATCHER_PRUNE_GRACE_S", grace_s, 1);
257
258 snprintf(f->db_path, sizeof(f->db_path), "%s/stale-project.db", f->cachedir);
259 snprintf(f->wal_path, sizeof(f->wal_path), "%s/stale-project.db-wal", f->cachedir);
260 snprintf(f->shm_path, sizeof(f->shm_path), "%s/stale-project.db-shm", f->cachedir);
261 th_write_file(f->db_path, "db\n");
262 th_write_file(f->wal_path, "wal\n");
263 th_write_file(f->shm_path, "shm\n");
264 return true;
265}
266
267static void prune_fixture_teardown(prune_fixture_t *f) {
268 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