/*
* Copyright (C) 2015 Canonical, Ltd.
*
* This program is free software: you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 3, as published
* by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful, but
* WITHOUT ANY WARRANTY; without even the implied warranties of
* MERCHANTABILITY, SATISFACTORY QUALITY, or FITNESS FOR A PARTICULAR
* PURPOSE. See the GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program. If not, see .
*
* Author: Xavi Garcia
*/
#include
#include
#include
#include "MediaPlayerMprisDefs.h"
#include "MediaPlayerMprisMock.h"
#include "MediaPlayerMprisMockAdaptor.h"
#include "MediaPlayer2MockAdaptor.h"
using namespace ayatana::indicators::testing;
int main(int argc, char *argv[])
{
if (argc != 2)
{
qWarning() << "usage: " << argv[0] << "TEST_PLAYER_NAME";
return 1;
}
QString playerName = QString(argv[1]);
QCoreApplication app(argc, argv);
QString playerService = QString("org.mpris.MediaPlayer2.") + playerName;
QDBusConnection connection = QDBusConnection::sessionBus();
if (!connection.interface()->isServiceRegistered(playerService))
{
auto service = new MediaPlayerMprisMock(playerName, &app);
new PlayerAdaptor(service);
new MediaPlayer2Adaptor(service);
if (!connection.registerService(playerService))
{
qDebug() << connection.lastError();
qFatal("Could not register MediaPlayerMprisMock service.");
}
if (!connection.registerObject("/org/mpris/MediaPlayer2", service))
{
qFatal("Could not register MediaPlayerMprisMock object.");
}
}
else
{
qDebug() << "Service is already registered!.";
}
return app.exec();
}