mirror of
https://git.proxmox.com/git/libgit2
synced 2025-05-07 23:54:50 +00:00
commit
a12c291b54
@ -6,8 +6,10 @@ static const char *commit_message = "This commit has been created in memory\n\
|
||||
This is a commit created in memory and it will be written back to disk\n";
|
||||
static const char *tree_oid = "1810dff58d8a660512d4832e740f692884338ccd";
|
||||
static const char *root_commit_message = "This is a root commit\n\
|
||||
This is a root commit and should be the only one in this branch\n";
|
||||
|
||||
This is a root commit and should be the only one in this branch\n";
|
||||
static char *head_old;
|
||||
static git_reference *head, *branch;
|
||||
static git_commit *commit;
|
||||
|
||||
// Fixture setup
|
||||
static git_repository *g_repo;
|
||||
@ -17,6 +19,13 @@ void test_commit_write__initialize(void)
|
||||
}
|
||||
void test_commit_write__cleanup(void)
|
||||
{
|
||||
git_reference_free(head);
|
||||
git_reference_free(branch);
|
||||
|
||||
git_commit_free(commit);
|
||||
|
||||
git__free(head_old);
|
||||
|
||||
cl_git_sandbox_cleanup();
|
||||
}
|
||||
|
||||
@ -24,7 +33,6 @@ void test_commit_write__cleanup(void)
|
||||
// write a new commit object from memory to disk
|
||||
void test_commit_write__from_memory(void)
|
||||
{
|
||||
git_commit *commit;
|
||||
git_oid tree_id, parent_id, commit_id;
|
||||
git_signature *author, *committer;
|
||||
const git_signature *author1, *committer1;
|
||||
@ -79,18 +87,13 @@ void test_commit_write__from_memory(void)
|
||||
cl_assert(strcmp(git_commit_message(commit), commit_message) == 0);
|
||||
}
|
||||
|
||||
|
||||
|
||||
// create a root commit
|
||||
void test_commit_write__root(void)
|
||||
{
|
||||
git_commit *commit;
|
||||
git_oid tree_id, commit_id;
|
||||
const git_oid *branch_oid;
|
||||
git_signature *author, *committer;
|
||||
const char *branch_name = "refs/heads/root-commit-branch";
|
||||
git_reference *head, *branch;
|
||||
char *head_old;
|
||||
git_tree *tree;
|
||||
|
||||
git_oid_fromstr(&tree_id, tree_oid);
|
||||
|
@ -62,6 +62,8 @@ static void files_are_equal(const char *a, const char *b)
|
||||
|
||||
git_buf_free(&buf_a);
|
||||
git_buf_free(&buf_b);
|
||||
|
||||
cl_assert(pass);
|
||||
}
|
||||
|
||||
|
||||
|
@ -9,36 +9,6 @@ static const char *third_tree = "eb86d8b81d6adbd5290a935d6c9976882de98488";
|
||||
|
||||
static git_repository *g_repo;
|
||||
|
||||
|
||||
// Helpers
|
||||
static int print_tree(git_repository *repo, const git_oid *tree_oid, int depth)
|
||||
{
|
||||
static const char *indent = " ";
|
||||
git_tree *tree;
|
||||
unsigned int i;
|
||||
|
||||
if (git_tree_lookup(&tree, repo, tree_oid) < GIT_SUCCESS)
|
||||
return GIT_ERROR;
|
||||
|
||||
for (i = 0; i < git_tree_entrycount(tree); ++i) {
|
||||
const git_tree_entry *entry = git_tree_entry_byindex(tree, i);
|
||||
char entry_oid[40];
|
||||
|
||||
git_oid_fmt(entry_oid, &entry->oid);
|
||||
printf("%.*s%o [%.*s] %s\n", depth*2, indent, entry->attr, 40, entry_oid, entry->filename);
|
||||
|
||||
if (entry->attr == S_IFDIR) {
|
||||
if (print_tree(repo, &entry->oid, depth + 1) < GIT_SUCCESS) {
|
||||
git_tree_free(tree);
|
||||
return GIT_ERROR;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
git_tree_free(tree);
|
||||
return GIT_SUCCESS;
|
||||
}
|
||||
|
||||
// Fixture setup and teardown
|
||||
void test_object_tree_write__initialize(void)
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user