From f24fa0880cdaa997bb12b298d44bf54988d6cfb4 Mon Sep 17 00:00:00 2001 From: Dave Borowitz Date: Thu, 4 Nov 2010 15:06:56 -0700 Subject: [PATCH] Test that commit attributes are set correctly. --- tests/t0403-write.c | 25 +++++++++++++++++++++---- 1 file changed, 21 insertions(+), 4 deletions(-) diff --git a/tests/t0403-write.c b/tests/t0403-write.c index 4bd659730..d91e7b64d 100644 --- a/tests/t0403-write.c +++ b/tests/t0403-write.c @@ -1,6 +1,7 @@ #include "test_lib.h" #include "test_helpers.h" #include "commit.h" +#include "person.h" #include #include @@ -18,12 +19,15 @@ static const char *tree_oid = "1810dff58d8a660512d4832e740f692884338ccd"; #define COMMITTER_NAME "Vicent Marti" #define COMMITTER_EMAIL "vicent@github.com" +#define 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" BEGIN_TEST(writenew_test) git_repository *repo; git_commit *commit, *parent; git_tree *tree; git_oid id; + const git_person *author, *committer; /* char hex_oid[41]; */ must_pass(git_repository_open(&repo, REPOSITORY_FOLDER)); @@ -40,10 +44,23 @@ BEGIN_TEST(writenew_test) /* Set other attributes */ git_commit_set_committer(commit, COMMITTER_NAME, COMMITTER_EMAIL, 123456789); git_commit_set_author(commit, COMMITTER_NAME, COMMITTER_EMAIL, 987654321); - git_commit_set_message(commit, - "This commit has been created in memory\n\ -This is a commit created in memory and it will be written back to disk\n"); - + git_commit_set_message(commit, COMMIT_MESSAGE); + + /* Check attributes were set correctly */ + author = git_commit_author(commit); + must_be_true(author != NULL); + must_be_true(strcmp(author->name, COMMITTER_NAME) == 0); + must_be_true(strcmp(author->email, COMMITTER_EMAIL) == 0); + must_be_true(author->time == 987654321); + + committer = git_commit_committer(commit); + must_be_true(committer != NULL); + must_be_true(strcmp(committer->name, COMMITTER_NAME) == 0); + must_be_true(strcmp(committer->email, COMMITTER_EMAIL) == 0); + must_be_true(committer->time == 123456789); + + must_be_true(strcmp(git_commit_message(commit), COMMIT_MESSAGE) == 0); + /* add new tree */ git_oid_mkstr(&id, tree_oid); must_pass(git_tree_lookup(&tree, repo, &id));