summaryrefslogtreecommitdiff
path: root/tests/libgit2/status/status_helpers.h
diff options
context:
space:
mode:
Diffstat (limited to 'tests/libgit2/status/status_helpers.h')
-rw-r--r--tests/libgit2/status/status_helpers.h51
1 files changed, 51 insertions, 0 deletions
diff --git a/tests/libgit2/status/status_helpers.h b/tests/libgit2/status/status_helpers.h
new file mode 100644
index 000000000..464266af3
--- /dev/null
+++ b/tests/libgit2/status/status_helpers.h
@@ -0,0 +1,51 @@
+#ifndef INCLUDE_cl_status_helpers_h__
+#define INCLUDE_cl_status_helpers_h__
+
+typedef struct {
+ int wrong_status_flags_count;
+ int wrong_sorted_path;
+ int entry_count;
+ const unsigned int* expected_statuses;
+ const char** expected_paths;
+ int expected_entry_count;
+ const char *file;
+ const char *func;
+ int line;
+ bool debug;
+} status_entry_counts;
+
+#define status_counts_init(counts, paths, statuses) do { \
+ memset(&(counts), 0, sizeof(counts)); \
+ (counts).expected_statuses = (statuses); \
+ (counts).expected_paths = (paths); \
+ (counts).file = __FILE__; \
+ (counts).func = __func__; \
+ (counts).line = __LINE__; \
+ } while (0)
+
+/* cb_status__normal takes payload of "status_entry_counts *" */
+
+extern int cb_status__normal(
+ const char *path, unsigned int status_flags, void *payload);
+
+
+/* cb_status__count takes payload of "int *" */
+
+extern int cb_status__count(const char *p, unsigned int s, void *payload);
+
+
+typedef struct {
+ int count;
+ unsigned int status;
+ bool debug;
+} status_entry_single;
+
+/* cb_status__single takes payload of "status_entry_single *" */
+
+extern int cb_status__single(const char *p, unsigned int s, void *payload);
+
+/* cb_status__print takes optional payload of "int *" */
+
+extern int cb_status__print(const char *p, unsigned int s, void *payload);
+
+#endif