diff --git a/src/gui/event-editor/gcal-schedule-section.c b/src/gui/event-editor/gcal-schedule-section.c index 5cac4615..df13904d 100644 --- a/src/gui/event-editor/gcal-schedule-section.c +++ b/src/gui/event-editor/gcal-schedule-section.c @@ -949,3 +949,9 @@ gcal_schedule_values_free (GcalScheduleValues *values) g_free (values); } + +void +gcal_schedule_section_add_tests (void) +{ + /* g_test_add_func ("/event_editor/schedule_section/...", ...); */ +} diff --git a/src/gui/event-editor/gcal-schedule-section.h b/src/gui/event-editor/gcal-schedule-section.h index 04211c12..35ec0a46 100644 --- a/src/gui/event-editor/gcal-schedule-section.h +++ b/src/gui/event-editor/gcal-schedule-section.h @@ -23,6 +23,10 @@ #include #include +#include "gcal-enums.h" +#include "gcal-event.h" +#include "gcal-recurrence.h" + G_BEGIN_DECLS #define GCAL_TYPE_SCHEDULE_SECTION (gcal_schedule_section_get_type()) @@ -52,4 +56,8 @@ void gcal_schedule_values_free (GcalScheduleVa G_DEFINE_AUTOPTR_CLEANUP_FUNC (GcalScheduleValues, gcal_schedule_values_free); +/* Tests */ + +void gcal_schedule_section_add_tests (void); + G_END_DECLS diff --git a/src/gui/gcal-tests.c b/src/gui/gcal-tests.c new file mode 100644 index 00000000..979ba9fc --- /dev/null +++ b/src/gui/gcal-tests.c @@ -0,0 +1,15 @@ +#include + +#include "gcal-tests.h" +#include "event-editor/gcal-schedule-section.h" + +/* Adds all the tests for the internals of the GUI. + * + * To avoid exporting lots of little test functions from each source file, add a single + * gcal_foo_add_tests() that in turn adds unit tests for that file. + */ +void +gcal_tests_add_internals (void) +{ + gcal_schedule_section_add_tests (); +} diff --git a/src/gui/gcal-tests.h b/src/gui/gcal-tests.h new file mode 100644 index 00000000..346d13fc --- /dev/null +++ b/src/gui/gcal-tests.h @@ -0,0 +1,3 @@ +#pragma once + +void gcal_tests_add_internals (void); diff --git a/src/gui/meson.build b/src/gui/meson.build index 7fbebd2c..aff98194 100644 --- a/src/gui/meson.build +++ b/src/gui/meson.build @@ -52,6 +52,7 @@ sources += files( 'gcal-quick-add-popover.c', 'gcal-search-button.c', 'gcal-sync-indicator.c', + 'gcal-tests.c', 'gcal-weather-settings.c', 'gcal-window.c', ) diff --git a/tests/meson.build b/tests/meson.build index 29aff0a2..682fff56 100644 --- a/tests/meson.build +++ b/tests/meson.build @@ -35,6 +35,7 @@ tests = [ 'daylight-saving', #'discoverer', # https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/1251 'event', + 'internals', 'range', 'range-tree', #'server', # https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/1251 diff --git a/tests/test-internals.c b/tests/test-internals.c new file mode 100644 index 00000000..239e569c --- /dev/null +++ b/tests/test-internals.c @@ -0,0 +1,17 @@ +#include +#include + +#include "gui/gcal-tests.h" + +int +main (int argc, char **argv) +{ + g_setenv ("TZ", "UTC", TRUE); + + g_test_init (&argc, &argv, NULL); + g_test_bug_base ("https://gitlab.gnome.org/GNOME/gnome-calendar/-/issues/"); + + gcal_tests_add_internals (); + + return g_test_run (); +}