aboutsummaryrefslogtreecommitdiff
path: root/tests/media-player-user.cc
diff options
context:
space:
mode:
Diffstat (limited to 'tests/media-player-user.cc')
-rw-r--r--tests/media-player-user.cc498
1 files changed, 249 insertions, 249 deletions
diff --git a/tests/media-player-user.cc b/tests/media-player-user.cc
index eab996b..218a752 100644
--- a/tests/media-player-user.cc
+++ b/tests/media-player-user.cc
@@ -33,288 +33,288 @@ extern "C" {
class MediaPlayerUserTest : public ::testing::Test
{
- protected:
- DbusTestService * testsystem = NULL;
- AccountsServiceMock service_mock;
-
- DbusTestService * testsession = NULL;
-
- DbusTestProcess * systemmonitor = nullptr;
- DbusTestProcess * sessionmonitor = nullptr;
-
- GDBusConnection * system = NULL;
- GDBusConnection * session = NULL;
- GDBusProxy * proxy = NULL;
-
- std::chrono::milliseconds _eventuallyTime = std::chrono::seconds{5};
-
- virtual void SetUp() {
- /* System Bus */
- testsystem = dbus_test_service_new(NULL);
- dbus_test_service_set_bus(testsystem, DBUS_TEST_SERVICE_BUS_SYSTEM);
-
- systemmonitor = dbus_test_process_new("dbus-monitor");
- dbus_test_process_append_param(systemmonitor, "--system");
- dbus_test_task_set_name(DBUS_TEST_TASK(systemmonitor), "System");
- dbus_test_service_add_task(testsystem, DBUS_TEST_TASK(systemmonitor));
-
- dbus_test_service_add_task(testsystem, (DbusTestTask*)service_mock);
- dbus_test_service_start_tasks(testsystem);
-
- system = g_bus_get_sync(G_BUS_TYPE_SYSTEM, NULL, NULL);
- ASSERT_NE(nullptr, system);
- g_dbus_connection_set_exit_on_close(system, FALSE);
- g_object_add_weak_pointer(G_OBJECT(system), (gpointer *)&system);
-
- /* Session Bus */
- testsession = dbus_test_service_new(NULL);
- dbus_test_service_set_bus(testsession, DBUS_TEST_SERVICE_BUS_SESSION);
-
- sessionmonitor = dbus_test_process_new("dbus-monitor");
- dbus_test_process_append_param(sessionmonitor, "--session");
- dbus_test_task_set_name(DBUS_TEST_TASK(sessionmonitor), "Session");
- dbus_test_service_add_task(testsession, DBUS_TEST_TASK(sessionmonitor));
-
- dbus_test_service_start_tasks(testsession);
-
- session = g_bus_get_sync(G_BUS_TYPE_SYSTEM, NULL, NULL);
- ASSERT_NE(nullptr, session);
- g_dbus_connection_set_exit_on_close(session, FALSE);
- g_object_add_weak_pointer(G_OBJECT(session), (gpointer *)&session);
-
- /* Setup proxy */
- proxy = g_dbus_proxy_new_sync(system,
- G_DBUS_PROXY_FLAGS_NONE,
- NULL,
- "org.freedesktop.Accounts",
- "/user",
- "org.freedesktop.DBus.Properties",
- NULL, NULL);
- ASSERT_NE(nullptr, proxy);
- }
-
- virtual void TearDown() {
- g_clear_object(&sessionmonitor);
- g_clear_object(&systemmonitor);
-
- g_clear_object(&proxy);
- g_clear_object(&testsystem);
- g_clear_object(&testsession);
-
- g_object_unref(system);
- g_object_unref(session);
-
- #if 0
- /* Accounts Service keeps a bunch of references around so we
- have to split the tests and can't check this :-( */
- unsigned int cleartry = 0;
- while ((session != NULL || system != NULL) && cleartry < 100) {
- loop(100);
- cleartry++;
- }
-
- ASSERT_EQ(nullptr, session);
- ASSERT_EQ(nullptr, system);
- #endif
- }
-
- static gboolean timeout_cb (gpointer user_data) {
- GMainLoop * loop = static_cast<GMainLoop *>(user_data);
- g_main_loop_quit(loop);
- return G_SOURCE_REMOVE;
- }
-
- void loop (unsigned int ms) {
- GMainLoop * loop = g_main_loop_new(NULL, FALSE);
- g_timeout_add(ms, timeout_cb, loop);
- g_main_loop_run(loop);
- g_main_loop_unref(loop);
- }
-
- void set_property (const gchar * name, GVariant * value) {
- dbus_test_dbus_mock_object_update_property((DbusTestDbusMock *)service_mock, service_mock.get_sound(), name, value, NULL);
- }
-
- testing::AssertionResult expectEventually (std::function<testing::AssertionResult(void)> &testfunc) {
- auto loop = std::shared_ptr<GMainLoop>(g_main_loop_new(nullptr, FALSE), [](GMainLoop * loop) { if (loop != nullptr) g_main_loop_unref(loop); });
-
- std::promise<testing::AssertionResult> retpromise;
- auto retfuture = retpromise.get_future();
- auto start = std::chrono::steady_clock::now();
-
- /* The core of the idle function as an object so we can use the C++-isms
- of attaching the variables and make this code reasonably readable */
- std::function<void(void)> idlefunc = [&loop, &retpromise, &testfunc, &start, this]() -> void {
- auto result = testfunc();
-
- if (result == false && _eventuallyTime > (std::chrono::steady_clock::now() - start)) {
- return;
- }
-
- retpromise.set_value(result);
- g_main_loop_quit(loop.get());
- };
-
- auto idlesrc = g_idle_add([](gpointer data) -> gboolean {
- auto func = reinterpret_cast<std::function<void(void)> *>(data);
- (*func)();
- return G_SOURCE_CONTINUE;
- }, &idlefunc);
-
- g_main_loop_run(loop.get());
- g_source_remove(idlesrc);
-
- return retfuture.get();
- }
-
- /* Eventually Helpers */
- #define _EVENTUALLY_HELPER(oper) \
- template <typename... Args> testing::AssertionResult expectEventually##oper (Args&& ... args) { \
- std::function<testing::AssertionResult(void)> func = [&]() { \
- return testing::internal::CmpHelper##oper(std::forward<Args>(args)...); \
- }; \
- return expectEventually(func); \
- }
-
- _EVENTUALLY_HELPER(EQ);
- _EVENTUALLY_HELPER(NE);
- _EVENTUALLY_HELPER(LT);
- _EVENTUALLY_HELPER(GT);
- _EVENTUALLY_HELPER(STREQ);
- _EVENTUALLY_HELPER(STRNE);
-
- #undef _EVENTUALLY_HELPER
+ protected:
+ DbusTestService * testsystem = NULL;
+ AccountsServiceMock service_mock;
+
+ DbusTestService * testsession = NULL;
+
+ DbusTestProcess * systemmonitor = nullptr;
+ DbusTestProcess * sessionmonitor = nullptr;
+
+ GDBusConnection * system = NULL;
+ GDBusConnection * session = NULL;
+ GDBusProxy * proxy = NULL;
+
+ std::chrono::milliseconds _eventuallyTime = std::chrono::seconds{5};
+
+ virtual void SetUp() {
+ /* System Bus */
+ testsystem = dbus_test_service_new(NULL);
+ dbus_test_service_set_bus(testsystem, DBUS_TEST_SERVICE_BUS_SYSTEM);
+
+ systemmonitor = dbus_test_process_new("dbus-monitor");
+ dbus_test_process_append_param(systemmonitor, "--system");
+ dbus_test_task_set_name(DBUS_TEST_TASK(systemmonitor), "System");
+ dbus_test_service_add_task(testsystem, DBUS_TEST_TASK(systemmonitor));
+
+ dbus_test_service_add_task(testsystem, (DbusTestTask*)service_mock);
+ dbus_test_service_start_tasks(testsystem);
+
+ system = g_bus_get_sync(G_BUS_TYPE_SYSTEM, NULL, NULL);
+ ASSERT_NE(nullptr, system);
+ g_dbus_connection_set_exit_on_close(system, FALSE);
+ g_object_add_weak_pointer(G_OBJECT(system), (gpointer *)&system);
+
+ /* Session Bus */
+ testsession = dbus_test_service_new(NULL);
+ dbus_test_service_set_bus(testsession, DBUS_TEST_SERVICE_BUS_SESSION);
+
+ sessionmonitor = dbus_test_process_new("dbus-monitor");
+ dbus_test_process_append_param(sessionmonitor, "--session");
+ dbus_test_task_set_name(DBUS_TEST_TASK(sessionmonitor), "Session");
+ dbus_test_service_add_task(testsession, DBUS_TEST_TASK(sessionmonitor));
+
+ dbus_test_service_start_tasks(testsession);
+
+ session = g_bus_get_sync(G_BUS_TYPE_SYSTEM, NULL, NULL);
+ ASSERT_NE(nullptr, session);
+ g_dbus_connection_set_exit_on_close(session, FALSE);
+ g_object_add_weak_pointer(G_OBJECT(session), (gpointer *)&session);
+
+ /* Setup proxy */
+ proxy = g_dbus_proxy_new_sync(system,
+ G_DBUS_PROXY_FLAGS_NONE,
+ NULL,
+ "org.freedesktop.Accounts",
+ "/user",
+ "org.freedesktop.DBus.Properties",
+ NULL, NULL);
+ ASSERT_NE(nullptr, proxy);
+ }
+
+ virtual void TearDown() {
+ g_clear_object(&sessionmonitor);
+ g_clear_object(&systemmonitor);
+
+ g_clear_object(&proxy);
+ g_clear_object(&testsystem);
+ g_clear_object(&testsession);
+
+ g_object_unref(system);
+ g_object_unref(session);
+
+ #if 0
+ /* Accounts Service keeps a bunch of references around so we
+ have to split the tests and can't check this :-( */
+ unsigned int cleartry = 0;
+ while ((session != NULL || system != NULL) && cleartry < 100) {
+ loop(100);
+ cleartry++;
+ }
+
+ ASSERT_EQ(nullptr, session);
+ ASSERT_EQ(nullptr, system);
+ #endif
+ }
+
+ static gboolean timeout_cb (gpointer user_data) {
+ GMainLoop * loop = static_cast<GMainLoop *>(user_data);
+ g_main_loop_quit(loop);
+ return G_SOURCE_REMOVE;
+ }
+
+ void loop (unsigned int ms) {
+ GMainLoop * loop = g_main_loop_new(NULL, FALSE);
+ g_timeout_add(ms, timeout_cb, loop);
+ g_main_loop_run(loop);
+ g_main_loop_unref(loop);
+ }
+
+ void set_property (const gchar * name, GVariant * value) {
+ dbus_test_dbus_mock_object_update_property((DbusTestDbusMock *)service_mock, service_mock.get_sound(), name, value, NULL);
+ }
+
+ testing::AssertionResult expectEventually (std::function<testing::AssertionResult(void)> &testfunc) {
+ auto loop = std::shared_ptr<GMainLoop>(g_main_loop_new(nullptr, FALSE), [](GMainLoop * loop) { if (loop != nullptr) g_main_loop_unref(loop); });
+
+ std::promise<testing::AssertionResult> retpromise;
+ auto retfuture = retpromise.get_future();
+ auto start = std::chrono::steady_clock::now();
+
+ /* The core of the idle function as an object so we can use the C++-isms
+ of attaching the variables and make this code reasonably readable */
+ std::function<void(void)> idlefunc = [&loop, &retpromise, &testfunc, &start, this]() -> void {
+ auto result = testfunc();
+
+ if (result == false && _eventuallyTime > (std::chrono::steady_clock::now() - start)) {
+ return;
+ }
+
+ retpromise.set_value(result);
+ g_main_loop_quit(loop.get());
+ };
+
+ auto idlesrc = g_idle_add([](gpointer data) -> gboolean {
+ auto func = reinterpret_cast<std::function<void(void)> *>(data);
+ (*func)();
+ return G_SOURCE_CONTINUE;
+ }, &idlefunc);
+
+ g_main_loop_run(loop.get());
+ g_source_remove(idlesrc);
+
+ return retfuture.get();
+ }
+
+ /* Eventually Helpers */
+ #define _EVENTUALLY_HELPER(oper) \
+ template <typename... Args> testing::AssertionResult expectEventually##oper (Args&& ... args) { \
+ std::function<testing::AssertionResult(void)> func = [&]() { \
+ return testing::internal::CmpHelper##oper(std::forward<Args>(args)...); \
+ }; \
+ return expectEventually(func); \
+ }
+
+ _EVENTUALLY_HELPER(EQ);
+ _EVENTUALLY_HELPER(NE);
+ _EVENTUALLY_HELPER(LT);
+ _EVENTUALLY_HELPER(GT);
+ _EVENTUALLY_HELPER(STREQ);
+ _EVENTUALLY_HELPER(STRNE);
+
+ #undef _EVENTUALLY_HELPER
};
/* Helpers */
#define EXPECT_EVENTUALLY_EQ(expected, actual) \
- EXPECT_PRED_FORMAT2(MediaPlayerUserTest::expectEventuallyEQ, expected, actual)
+ EXPECT_PRED_FORMAT2(MediaPlayerUserTest::expectEventuallyEQ, expected, actual)
#define EXPECT_EVENTUALLY_NE(expected, actual) \
- EXPECT_PRED_FORMAT2(MediaPlayerUserTest::expectEventuallyNE, expected, actual)
+ EXPECT_PRED_FORMAT2(MediaPlayerUserTest::expectEventuallyNE, expected, actual)
#define EXPECT_EVENTUALLY_LT(expected, actual) \
- EXPECT_PRED_FORMAT2(MediaPlayerUserTest::expectEventuallyLT, expected, actual)
+ EXPECT_PRED_FORMAT2(MediaPlayerUserTest::expectEventuallyLT, expected, actual)
#define EXPECT_EVENTUALLY_GT(expected, actual) \
- EXPECT_PRED_FORMAT2(MediaPlayerUserTest::expectEventuallyGT, expected, actual)
+ EXPECT_PRED_FORMAT2(MediaPlayerUserTest::expectEventuallyGT, expected, actual)
#define EXPECT_EVENTUALLY_STREQ(expected, actual) \
- EXPECT_PRED_FORMAT2(MediaPlayerUserTest::expectEventuallySTREQ, expected, actual)
+ EXPECT_PRED_FORMAT2(MediaPlayerUserTest::expectEventuallySTREQ, expected, actual)
#define EXPECT_EVENTUALLY_STRNE(expected, actual) \
- EXPECT_PRED_FORMAT2(MediaPlayerUserTest::expectEventuallySTRNE, expected, actual)
+ EXPECT_PRED_FORMAT2(MediaPlayerUserTest::expectEventuallySTRNE, expected, actual)
TEST_F(MediaPlayerUserTest, BasicObject) {
- MediaPlayerUser * player = media_player_user_new("user");
- ASSERT_NE(nullptr, player);
-
- /* Protected, but no useful data */
- EXPECT_FALSE(media_player_get_is_running(MEDIA_PLAYER(player)));
- EXPECT_TRUE(media_player_get_can_raise(MEDIA_PLAYER(player)));
- EXPECT_STREQ("user", media_player_get_id(MEDIA_PLAYER(player)));
- EXPECT_STREQ("", media_player_get_name(MEDIA_PLAYER(player)));
- EXPECT_STREQ("", media_player_get_state(MEDIA_PLAYER(player)));
- EXPECT_EQ(nullptr, media_player_get_icon(MEDIA_PLAYER(player)));
- EXPECT_EQ(nullptr, media_player_get_current_track(MEDIA_PLAYER(player)));
-
- /* Get the proxy -- but no good data */
- loop(100);
-
- /* Ensure even with the proxy we don't have anything */
- EXPECT_FALSE(media_player_get_is_running(MEDIA_PLAYER(player)));
- EXPECT_TRUE(media_player_get_can_raise(MEDIA_PLAYER(player)));
- EXPECT_STREQ("user", media_player_get_id(MEDIA_PLAYER(player)));
- EXPECT_STREQ("", media_player_get_name(MEDIA_PLAYER(player)));
- EXPECT_STREQ("", media_player_get_state(MEDIA_PLAYER(player)));
- EXPECT_EQ(nullptr, media_player_get_icon(MEDIA_PLAYER(player)));
- EXPECT_EQ(nullptr, media_player_get_current_track(MEDIA_PLAYER(player)));
-
- g_clear_object(&player);
+ MediaPlayerUser * player = media_player_user_new("user");
+ ASSERT_NE(nullptr, player);
+
+ /* Protected, but no useful data */
+ EXPECT_FALSE(media_player_get_is_running(MEDIA_PLAYER(player)));
+ EXPECT_TRUE(media_player_get_can_raise(MEDIA_PLAYER(player)));
+ EXPECT_STREQ("user", media_player_get_id(MEDIA_PLAYER(player)));
+ EXPECT_STREQ("", media_player_get_name(MEDIA_PLAYER(player)));
+ EXPECT_STREQ("", media_player_get_state(MEDIA_PLAYER(player)));
+ EXPECT_EQ(nullptr, media_player_get_icon(MEDIA_PLAYER(player)));
+ EXPECT_EQ(nullptr, media_player_get_current_track(MEDIA_PLAYER(player)));
+
+ /* Get the proxy -- but no good data */
+ loop(100);
+
+ /* Ensure even with the proxy we don't have anything */
+ EXPECT_FALSE(media_player_get_is_running(MEDIA_PLAYER(player)));
+ EXPECT_TRUE(media_player_get_can_raise(MEDIA_PLAYER(player)));
+ EXPECT_STREQ("user", media_player_get_id(MEDIA_PLAYER(player)));
+ EXPECT_STREQ("", media_player_get_name(MEDIA_PLAYER(player)));
+ EXPECT_STREQ("", media_player_get_state(MEDIA_PLAYER(player)));
+ EXPECT_EQ(nullptr, media_player_get_icon(MEDIA_PLAYER(player)));
+ EXPECT_EQ(nullptr, media_player_get_current_track(MEDIA_PLAYER(player)));
+
+ g_clear_object(&player);
}
void
running_update (GObject * obj, GParamSpec * pspec, bool * running) {
- *running = media_player_get_is_running(MEDIA_PLAYER(obj)) == TRUE;
+ *running = media_player_get_is_running(MEDIA_PLAYER(obj)) == TRUE;
};
TEST_F(MediaPlayerUserTest, DISABLED_DataSet) {
- /* Put data into Acts */
- set_property("Timestamp", g_variant_new_uint64(g_get_monotonic_time()));
- set_property("PlayerName", g_variant_new_string("The Player Formerly Known as Prince"));
- GIcon * in_icon = g_themed_icon_new_with_default_fallbacks("foo-bar-fallback");
- set_property("PlayerIcon", g_variant_new_variant(g_icon_serialize(in_icon)));
- set_property("State", g_variant_new_string("Chillin'"));
- set_property("Title", g_variant_new_string("Dictator"));
- set_property("Artist", g_variant_new_string("Bansky"));
- set_property("Album", g_variant_new_string("Vinyl is dead"));
- set_property("ArtUrl", g_variant_new_string("http://art.url"));
-
- /* Build our media player */
- MediaPlayerUser * player = media_player_user_new("user");
- ASSERT_NE(nullptr, player);
-
- /* Ensure even with the proxy we don't have anything */
- bool running = false;
- g_signal_connect(G_OBJECT(player), "notify::is-running", G_CALLBACK(running_update), &running);
- running_update(G_OBJECT(player), nullptr, &running);
- EXPECT_EVENTUALLY_EQ(true, running);
- EXPECT_TRUE(media_player_get_can_raise(MEDIA_PLAYER(player)));
- EXPECT_STREQ("user", media_player_get_id(MEDIA_PLAYER(player)));
- EXPECT_STREQ("The Player Formerly Known as Prince", media_player_get_name(MEDIA_PLAYER(player)));
- EXPECT_STREQ("Chillin'", media_player_get_state(MEDIA_PLAYER(player)));
-
- GIcon * out_icon = media_player_get_icon(MEDIA_PLAYER(player));
- EXPECT_NE(nullptr, out_icon);
- EXPECT_TRUE(g_icon_equal(in_icon, out_icon));
- // NOTE: No reference in 'out_icon' returned
-
- MediaPlayerTrack * track = media_player_get_current_track(MEDIA_PLAYER(player));
- EXPECT_NE(nullptr, track);
- EXPECT_STREQ("Dictator", media_player_track_get_title(track));
- EXPECT_STREQ("Bansky", media_player_track_get_artist(track));
- EXPECT_STREQ("Vinyl is dead", media_player_track_get_album(track));
- EXPECT_STREQ("http://art.url", media_player_track_get_art_url(track));
- // NOTE: No reference in 'track' returned
-
- g_clear_object(&in_icon);
- g_clear_object(&player);
+ /* Put data into Acts */
+ set_property("Timestamp", g_variant_new_uint64(g_get_monotonic_time()));
+ set_property("PlayerName", g_variant_new_string("The Player Formerly Known as Prince"));
+ GIcon * in_icon = g_themed_icon_new_with_default_fallbacks("foo-bar-fallback");
+ set_property("PlayerIcon", g_variant_new_variant(g_icon_serialize(in_icon)));
+ set_property("State", g_variant_new_string("Chillin'"));
+ set_property("Title", g_variant_new_string("Dictator"));
+ set_property("Artist", g_variant_new_string("Bansky"));
+ set_property("Album", g_variant_new_string("Vinyl is dead"));
+ set_property("ArtUrl", g_variant_new_string("http://art.url"));
+
+ /* Build our media player */
+ MediaPlayerUser * player = media_player_user_new("user");
+ ASSERT_NE(nullptr, player);
+
+ /* Ensure even with the proxy we don't have anything */
+ bool running = false;
+ g_signal_connect(G_OBJECT(player), "notify::is-running", G_CALLBACK(running_update), &running);
+ running_update(G_OBJECT(player), nullptr, &running);
+ EXPECT_EVENTUALLY_EQ(true, running);
+ EXPECT_TRUE(media_player_get_can_raise(MEDIA_PLAYER(player)));
+ EXPECT_STREQ("user", media_player_get_id(MEDIA_PLAYER(player)));
+ EXPECT_STREQ("The Player Formerly Known as Prince", media_player_get_name(MEDIA_PLAYER(player)));
+ EXPECT_STREQ("Chillin'", media_player_get_state(MEDIA_PLAYER(player)));
+
+ GIcon * out_icon = media_player_get_icon(MEDIA_PLAYER(player));
+ EXPECT_NE(nullptr, out_icon);
+ EXPECT_TRUE(g_icon_equal(in_icon, out_icon));
+ // NOTE: No reference in 'out_icon' returned
+
+ MediaPlayerTrack * track = media_player_get_current_track(MEDIA_PLAYER(player));
+ EXPECT_NE(nullptr, track);
+ EXPECT_STREQ("Dictator", media_player_track_get_title(track));
+ EXPECT_STREQ("Bansky", media_player_track_get_artist(track));
+ EXPECT_STREQ("Vinyl is dead", media_player_track_get_album(track));
+ EXPECT_STREQ("http://art.url", media_player_track_get_art_url(track));
+ // NOTE: No reference in 'track' returned
+
+ g_clear_object(&in_icon);
+ g_clear_object(&player);
}
TEST_F(MediaPlayerUserTest, DISABLED_TimeoutTest) {
- /* Put data into Acts -- but 15 minutes ago */
- set_property("Timestamp", g_variant_new_uint64(g_get_monotonic_time() - 15 * 60 * 1000 * 1000));
- set_property("PlayerName", g_variant_new_string("The Player Formerly Known as Prince"));
- GIcon * in_icon = g_themed_icon_new_with_default_fallbacks("foo-bar-fallback");
- set_property("PlayerIcon", g_variant_new_variant(g_icon_serialize(in_icon)));
- set_property("State", g_variant_new_string("Chillin'"));
- set_property("Title", g_variant_new_string("Dictator"));
- set_property("Artist", g_variant_new_string("Bansky"));
- set_property("Album", g_variant_new_string("Vinyl is dead"));
- set_property("ArtUrl", g_variant_new_string("http://art.url"));
+ /* Put data into Acts -- but 15 minutes ago */
+ set_property("Timestamp", g_variant_new_uint64(g_get_monotonic_time() - 15 * 60 * 1000 * 1000));
+ set_property("PlayerName", g_variant_new_string("The Player Formerly Known as Prince"));
+ GIcon * in_icon = g_themed_icon_new_with_default_fallbacks("foo-bar-fallback");
+ set_property("PlayerIcon", g_variant_new_variant(g_icon_serialize(in_icon)));
+ set_property("State", g_variant_new_string("Chillin'"));
+ set_property("Title", g_variant_new_string("Dictator"));
+ set_property("Artist", g_variant_new_string("Bansky"));
+ set_property("Album", g_variant_new_string("Vinyl is dead"));
+ set_property("ArtUrl", g_variant_new_string("http://art.url"));
- /* Build our media player */
- MediaPlayerUser * player = media_player_user_new("user");
- ASSERT_NE(nullptr, player);
+ /* Build our media player */
+ MediaPlayerUser * player = media_player_user_new("user");
+ ASSERT_NE(nullptr, player);
- bool running = false;
- g_signal_connect(G_OBJECT(player), "notify::is-running", G_CALLBACK(running_update), &running);
- running_update(G_OBJECT(player), nullptr, &running);
+ bool running = false;
+ g_signal_connect(G_OBJECT(player), "notify::is-running", G_CALLBACK(running_update), &running);
+ running_update(G_OBJECT(player), nullptr, &running);
- /* Ensure that we show up as not running */
- EXPECT_EVENTUALLY_EQ(false, running);
+ /* Ensure that we show up as not running */
+ EXPECT_EVENTUALLY_EQ(false, running);
- /* Update to make running */
- set_property("Timestamp", g_variant_new_uint64(g_get_monotonic_time()));
+ /* Update to make running */
+ set_property("Timestamp", g_variant_new_uint64(g_get_monotonic_time()));
- EXPECT_EVENTUALLY_EQ(true, running);
+ EXPECT_EVENTUALLY_EQ(true, running);
- /* Clear to not run */
- set_property("Timestamp", g_variant_new_uint64(1));
+ /* Clear to not run */
+ set_property("Timestamp", g_variant_new_uint64(1));
- EXPECT_EVENTUALLY_EQ(false, running);
+ EXPECT_EVENTUALLY_EQ(false, running);
- g_clear_object(&in_icon);
- g_clear_object(&player);
+ g_clear_object(&in_icon);
+ g_clear_object(&player);
}