|
Packit Service |
20376f |
#include "describe_helpers.h"
|
|
Packit Service |
20376f |
|
|
Packit Service |
20376f |
void assert_describe(
|
|
Packit Service |
20376f |
const char *expected_output,
|
|
Packit Service |
20376f |
const char *revparse_spec,
|
|
Packit Service |
20376f |
git_repository *repo,
|
|
Packit Service |
20376f |
git_describe_options *opts,
|
|
Packit Service |
20376f |
git_describe_format_options *fmt_opts)
|
|
Packit Service |
20376f |
{
|
|
Packit Service |
20376f |
git_object *object;
|
|
Packit Service |
20376f |
git_buf label = GIT_BUF_INIT;
|
|
Packit Service |
20376f |
git_describe_result *result;
|
|
Packit Service |
20376f |
|
|
Packit Service |
20376f |
cl_git_pass(git_revparse_single(&object, repo, revparse_spec));
|
|
Packit Service |
20376f |
|
|
Packit Service |
20376f |
cl_git_pass(git_describe_commit(&result, object, opts));
|
|
Packit Service |
20376f |
cl_git_pass(git_describe_format(&label, result, fmt_opts));
|
|
Packit Service |
20376f |
|
|
Packit Service |
20376f |
cl_must_pass(p_fnmatch(expected_output, git_buf_cstr(&label), 0));
|
|
Packit Service |
20376f |
|
|
Packit Service |
20376f |
git_describe_result_free(result);
|
|
Packit Service |
20376f |
git_object_free(object);
|
|
Packit Service |
20376f |
git_buf_free(&label);
|
|
Packit Service |
20376f |
}
|
|
Packit Service |
20376f |
|
|
Packit Service |
20376f |
void assert_describe_workdir(
|
|
Packit Service |
20376f |
const char *expected_output,
|
|
Packit Service |
20376f |
git_repository *repo,
|
|
Packit Service |
20376f |
git_describe_options *opts,
|
|
Packit Service |
20376f |
git_describe_format_options *fmt_opts)
|
|
Packit Service |
20376f |
{
|
|
Packit Service |
20376f |
git_buf label = GIT_BUF_INIT;
|
|
Packit Service |
20376f |
git_describe_result *result;
|
|
Packit Service |
20376f |
|
|
Packit Service |
20376f |
cl_git_pass(git_describe_workdir(&result, repo, opts));
|
|
Packit Service |
20376f |
cl_git_pass(git_describe_format(&label, result, fmt_opts));
|
|
Packit Service |
20376f |
|
|
Packit Service |
20376f |
cl_must_pass(p_fnmatch(expected_output, git_buf_cstr(&label), 0));
|
|
Packit Service |
20376f |
|
|
Packit Service |
20376f |
git_describe_result_free(result);
|
|
Packit Service |
20376f |
git_buf_free(&label);
|
|
Packit Service |
20376f |
}
|