aboutsummaryrefslogtreecommitdiff
path: root/tests/test-menus.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/test-menus.cpp')
-rw-r--r--tests/test-menus.cpp34
1 files changed, 33 insertions, 1 deletions
diff --git a/tests/test-menus.cpp b/tests/test-menus.cpp
index 1f73193..ea8cb30 100644
--- a/tests/test-menus.cpp
+++ b/tests/test-menus.cpp
@@ -272,12 +272,35 @@ private:
for (int i=0, n=appointments.size(); i<n; i++)
InspectAppointmentMenuItem(section, first_appt_index+i, appointments[i]);
+ // there shouldn't be any alarms when "show alarms" is false
+ bool has_alarms = false;
+ m_state->settings->show_alarms.set(false);
+ wait_msec();
+
+ std::vector<Appointment> display_appointments = Menu::get_display_appointments(appointments, m_state->clock->localtime(), 5, m_state->settings->show_alarms.get());
+ for (int i=0, n=display_appointments.size(); i<n; i++)
+ if ((has_alarms = display_appointments[i].is_alarm()))
+ break;
+
+ EXPECT_FALSE(has_alarms);
+
+ m_state->settings->show_alarms.set(true);
+ wait_msec();
+
+ display_appointments = Menu::get_display_appointments(appointments, m_state->clock->localtime(), 5, m_state->settings->show_alarms.get());
+ for (int i=0, n=display_appointments.size(); i<n; i++)
+ if ((has_alarms = display_appointments[i].is_alarm()))
+ break;
+
+ EXPECT_TRUE(has_alarms);
+
//g_clear_object(&section);
//g_clear_object(&submenu);
}
void InspectDesktopAppointments(GMenuModel* menu_model, bool can_open_planner)
{
+ m_state->settings->show_alarms.set(true);
const int n_add_event_buttons = can_open_planner ? 1 : 0;
// get the Appointments section
@@ -324,15 +347,24 @@ private:
void InspectPhoneAppointments(GMenuModel* menu_model, bool can_open_planner)
{
+ m_state->settings->show_alarms.set(true);
auto submenu = g_menu_model_get_item_link(menu_model, 0, G_MENU_LINK_SUBMENU);
+
+ // there shouldn't be any menuitems when "show events" is false
+ m_state->settings->show_events.set(false);
+ wait_msec();
+ auto section = g_menu_model_get_item_link(submenu, Menu::Appointments, G_MENU_LINK_SECTION);
+ EXPECT_EQ(0, g_menu_model_get_n_items(section));
+ g_clear_object(&section);
// clear all the appointments
std::vector<Appointment> appointments;
+ m_state->settings->show_events.set(true);
m_state->calendar_upcoming->appointments().set(appointments);
wait_msec(); // wait a moment for the menu to update
// check that there's a "clock app" menuitem even when there are no appointments
- auto section = g_menu_model_get_item_link(submenu, Menu::Appointments, G_MENU_LINK_SECTION);
+ section = g_menu_model_get_item_link(submenu, Menu::Appointments, G_MENU_LINK_SECTION);
const char* expected_action = "phone.open-alarm-app";
EXPECT_EQ(1, g_menu_model_get_n_items(section));
gchar* action = nullptr;