summaryrefslogtreecommitdiff
path: root/tests/worktree/worktree_helpers.c
blob: 6d4cdbaebab04e25a429e89ab71ab2dcbac1537c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
#include "clar_libgit2.h"
#include "worktree_helpers.h"

void cleanup_fixture_worktree(worktree_fixture *fixture)
{
	if (!fixture)
		return;

	if (fixture->repo) {
		git_repository_free(fixture->repo);
		fixture->repo = NULL;
	}
	if (fixture->worktree) {
		git_repository_free(fixture->worktree);
		fixture->worktree = NULL;
	}

	if (fixture->reponame)
		cl_fixture_cleanup(fixture->reponame);
	if (fixture->worktreename)
		cl_fixture_cleanup(fixture->worktreename);
}

void setup_fixture_worktree(worktree_fixture *fixture)
{
	if (fixture->reponame)
		fixture->repo = cl_git_sandbox_init(fixture->reponame);
	if (fixture->worktreename)
		fixture->worktree = cl_git_sandbox_init(fixture->worktreename);
}