aboutsummaryrefslogtreecommitdiff
path: root/tests/test-timezones.cc
diff options
context:
space:
mode:
Diffstat (limited to 'tests/test-timezones.cc')
-rw-r--r--tests/test-timezones.cc83
1 files changed, 42 insertions, 41 deletions
diff --git a/tests/test-timezones.cc b/tests/test-timezones.cc
index cda53a6..d3c8e3a 100644
--- a/tests/test-timezones.cc
+++ b/tests/test-timezones.cc
@@ -33,33 +33,34 @@ typedef GeoclueFixture TimezonesFixture;
namespace
{
/* convenience func to set the timezone file */
- void set_file (const std::string& text)
+ void set_file(const std::string& text)
{
- FILE * fp = fopen (TIMEZONE_FILE, "w+");
- fprintf (fp, "%s\n", text.c_str());
- fclose (fp);
- sync ();
+ auto fp = fopen(TIMEZONE_FILE, "w+");
+ fprintf(fp, "%s\n", text.c_str());
+ fclose(fp);
+ sync();
}
}
-TEST_F (TimezonesFixture, ManagerTest)
+TEST_F(TimezonesFixture, ManagerTest)
{
std::string timezone_file = "America/New_York";
std::string timezone_geo = "America/Denver";
- set_file (timezone_file);
- LiveTimezones z (TIMEZONE_FILE);
- wait_msec (500); // wait for the bus to get set up
- EXPECT_EQ (timezone_file, z.timezone.get());
- std::set<std::string> zones = z.timezones.get();
- EXPECT_EQ (1, zones.size());
- EXPECT_EQ (1, zones.count(timezone_file));
+ set_file(timezone_file);
+ LiveTimezones z(TIMEZONE_FILE);
+ wait_msec(500); // wait for the bus to get set up
+ EXPECT_EQ(timezone_file, z.timezone.get());
+ auto zones = z.timezones.get();
+ //std::set<std::string> zones = z.timezones.get();
+ EXPECT_EQ(1, zones.size());
+ EXPECT_EQ(1, zones.count(timezone_file));
bool zone_changed = false;
auto zone_connection = z.timezone.changed().connect([&zone_changed, this](const std::string&) {
zone_changed = true;
- g_main_loop_quit (loop);
+ g_main_loop_quit(loop);
});
// start listening for a timezone change, then change the timezone
@@ -67,24 +68,24 @@ TEST_F (TimezonesFixture, ManagerTest)
auto zones_connection = z.timezones.changed().connect([&zones_changed, &zones, this](const std::set<std::string>& timezones) {
zones_changed = true;
zones = timezones;
- g_main_loop_quit (loop);
+ g_main_loop_quit(loop);
});
- g_idle_add ([](gpointer gz) {
+ g_idle_add([](gpointer gz) {
auto az = static_cast<LiveTimezones*>(gz);
- g_message ("geolocation was %d", (int)az->geolocationEnabled.get());
- g_message ("turning geolocation on");
+ g_message("geolocation was %d", (int)az->geolocationEnabled.get());
+ g_message("turning geolocation on");
az->geolocationEnabled.set(true);
return G_SOURCE_REMOVE;
}, &z);
// turn on geoclue during the idle... this should add timezone_1 to the 'timezones' property
- g_main_loop_run (loop);
- EXPECT_TRUE (zones_changed);
- EXPECT_EQ (timezone_file, z.timezone.get());
- EXPECT_EQ (2, zones.size());
- EXPECT_EQ (1, zones.count(timezone_file));
- EXPECT_EQ (1, zones.count(timezone_geo));
+ g_main_loop_run(loop);
+ EXPECT_TRUE(zones_changed);
+ EXPECT_EQ(timezone_file, z.timezone.get());
+ EXPECT_EQ(2, zones.size());
+ EXPECT_EQ(1, zones.count(timezone_file));
+ EXPECT_EQ(1, zones.count(timezone_geo));
zones_changed = false;
// now tweak the geoclue value... the geoclue-detected timezone should change,
@@ -92,28 +93,28 @@ TEST_F (TimezonesFixture, ManagerTest)
zone_changed = false;
zones_changed = false;
timezone_geo = "America/Chicago";
- setGeoclueTimezoneOnIdle (timezone_geo);
- g_main_loop_run (loop);
- EXPECT_FALSE (zone_changed);
- EXPECT_TRUE (zones_changed);
- EXPECT_EQ (timezone_file, z.timezone.get());
- EXPECT_EQ (2, zones.size());
- EXPECT_EQ (1, zones.count(timezone_file));
- EXPECT_EQ (1, zones.count(timezone_geo));
+ setGeoclueTimezoneOnIdle(timezone_geo);
+ g_main_loop_run(loop);
+ EXPECT_FALSE(zone_changed);
+ EXPECT_TRUE(zones_changed);
+ EXPECT_EQ(timezone_file, z.timezone.get());
+ EXPECT_EQ(2, zones.size());
+ EXPECT_EQ(1, zones.count(timezone_file));
+ EXPECT_EQ(1, zones.count(timezone_geo));
// now set the file value... this should change both the primary property and set property
zone_changed = false;
zones_changed = false;
timezone_file = "America/Los_Angeles";
- EXPECT_EQ (0, zones.count(timezone_file));
- g_idle_add ([](gpointer str) {set_file(static_cast<const char*>(str)); return G_SOURCE_REMOVE;}, const_cast<char*>(timezone_file.c_str()));
- g_main_loop_run (loop);
- EXPECT_TRUE (zone_changed);
- EXPECT_TRUE (zones_changed);
- EXPECT_EQ (timezone_file, z.timezone.get());
- EXPECT_EQ (2, zones.size());
- EXPECT_EQ (1, zones.count(timezone_file));
- EXPECT_EQ (1, zones.count(timezone_geo));
+ EXPECT_EQ(0, zones.count(timezone_file));
+ g_idle_add([](gpointer str) {set_file(static_cast<const char*>(str)); return G_SOURCE_REMOVE;}, const_cast<char*>(timezone_file.c_str()));
+ g_main_loop_run(loop);
+ EXPECT_TRUE(zone_changed);
+ EXPECT_TRUE(zones_changed);
+ EXPECT_EQ(timezone_file, z.timezone.get());
+ EXPECT_EQ(2, zones.size());
+ EXPECT_EQ(1, zones.count(timezone_file));
+ EXPECT_EQ(1, zones.count(timezone_geo));