From 698baf72cd6a606d9c8101c31e0d40b38d48a8bb Mon Sep 17 00:00:00 2001 From: Xavi Garcia Mena Date: Mon, 26 Oct 2015 12:01:16 +0100 Subject: Changed unit test to wait for the indicator to connect the user accounts --- tests/integration/indicator-sound-test-base.cpp | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) (limited to 'tests/integration/indicator-sound-test-base.cpp') diff --git a/tests/integration/indicator-sound-test-base.cpp b/tests/integration/indicator-sound-test-base.cpp index 2bd71b6..dd5d4b5 100644 --- a/tests/integration/indicator-sound-test-base.cpp +++ b/tests/integration/indicator-sound-test-base.cpp @@ -407,11 +407,11 @@ void IndicatorSoundTestBase::initializeAccountsInterface() auto username = qgetenv("USER"); if (username != "") { - std::unique_ptr accountsInterface(new AccountsInterface("org.freedesktop.Accounts", + main_accounts_interface_.reset(new AccountsInterface("org.freedesktop.Accounts", "/org/freedesktop/Accounts", dbusTestRunner.systemConnection(), 0)); - QDBusReply userResp = accountsInterface->call(QLatin1String("FindUserByName"), + QDBusReply userResp = main_accounts_interface_->call(QLatin1String("FindUserByName"), QLatin1String(username)); if (!userResp.isValid()) @@ -805,3 +805,16 @@ void IndicatorSoundTestBase::checkPortDevicesLabels(DevicePortType speakerPort, ) ).match()); } + +bool IndicatorSoundTestBase::setVolumeUntilAccountsIsConnected(double volume) +{ + int RETRY_TIME = 5000; + + setActionValue("volume", QVariant::fromValue(volume)); + while(!signal_spy_volume_changed_->wait(10) && RETRY_TIME) + { + RETRY_TIME -= 10; + setActionValue("volume", QVariant::fromValue(volume)); + } + return (signal_spy_volume_changed_->count() != 0); +} -- cgit v1.2.3