| #include "clar_libgit2.h" |
| |
| #include "blame.h" |
| |
| |
| /** |
| * The test repo has a history that looks like this: |
| * |
| * * (A) bc7c5ac |
| * |\ |
| * | * (B) aa06ecc |
| * * | (C) 63d671e |
| * |/ |
| * * (D) da23739 |
| * * (E) b99f7ac |
| * |
| */ |
| |
| static git_repository *g_repo = NULL; |
| |
| void test_blame_harder__initialize(void) |
| { |
| cl_git_pass(git_repository_open(&g_repo, cl_fixture("blametest.git"))); |
| } |
| |
| void test_blame_harder__cleanup(void) |
| { |
| git_repository_free(g_repo); |
| g_repo = NULL; |
| } |
| |
| |
| |
| void test_blame_harder__m(void) |
| { |
| /* TODO */ |
| git_blame_options opts = GIT_BLAME_OPTIONS_INIT; |
| |
| GIT_UNUSED(opts); |
| |
| opts.flags = GIT_BLAME_TRACK_COPIES_SAME_FILE; |
| } |
| |
| |
| void test_blame_harder__c(void) |
| { |
| git_blame_options opts = GIT_BLAME_OPTIONS_INIT; |
| |
| GIT_UNUSED(opts); |
| |
| /* Attribute the first hunk in b.txt to (E), since it was cut/pasted from |
| * a.txt in (D). |
| */ |
| opts.flags = GIT_BLAME_TRACK_COPIES_SAME_COMMIT_MOVES; |
| } |
| |
| void test_blame_harder__cc(void) |
| { |
| git_blame_options opts = GIT_BLAME_OPTIONS_INIT; |
| |
| GIT_UNUSED(opts); |
| |
| /* Attribute the second hunk in b.txt to (E), since it was copy/pasted from |
| * a.txt in (C). |
| */ |
| opts.flags = GIT_BLAME_TRACK_COPIES_SAME_COMMIT_COPIES; |
| } |
| |
| void test_blame_harder__ccc(void) |
| { |
| git_blame_options opts = GIT_BLAME_OPTIONS_INIT; |
| |
| GIT_UNUSED(opts); |
| |
| /* Attribute the third hunk in b.txt to (E). This hunk was deleted from |
| * a.txt in (D), but reintroduced in (B). |
| */ |
| opts.flags = GIT_BLAME_TRACK_COPIES_ANY_COMMIT_COPIES; |
| } |