kde-extraapps/amarok/tests/services/amazon/TestAmazonTrack.cpp
2014-11-28 15:37:25 +00:00

70 lines
3.1 KiB
C++

/****************************************************************************************
* Copyright (c) 2012 Sven Krohlas <sven@asbest-online.de> *
* *
* This program is free software; you can redistribute it and/or modify it under *
* the terms of the GNU General Public License as published by the Free Software *
* Foundation; either version 2 of the License, or (at your option) any later *
* version. *
* *
* This program is distributed in the hope that it will be useful, but WITHOUT ANY *
* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A *
* PARTICULAR PURPOSE. See the GNU General Pulic License for more details. *
* *
* You should have received a copy of the GNU General Public License along with *
* this program. If not, see <http://www.gnu.org/licenses/>. *
****************************************************************************************/
#include "TestAmazonTrack.h"
#include "services/amazon/AmazonMeta.h"
#include <QtTest/QTest>
#include <qtest_kde.h>
QTEST_KDEMAIN( TestAmazonTrack, GUI )
TestAmazonTrack::TestAmazonTrack() :
QObject()
{
}
void
TestAmazonTrack::testConstructor()
{
QStringList list, list2;
list << "id" << "name" << "trackNumber" << "length" << "playableUrl" << "albumId" << "artistId" << "price" << "ASIN";
list2 << "23" << "name" << "5" << "300" << "http://www.amazon.de/gp/dmusic/get_sample_url.html?ASIN=B007NV28OK" << "42" << "12" << "99" << "B007NV28OK";
Meta::AmazonTrack track( list );
Meta::AmazonTrack track2( list2 );
QCOMPARE( track.id(), 0 );
QCOMPARE( track.name(), QString( "name" ) );
QCOMPARE( track.trackNumber(), 0 );
QCOMPARE( track.length(), (qint64)0 );
QCOMPARE( track.playableUrl(), KUrl( "playableUrl" ) );
QCOMPARE( track.albumId(), 0 );
QCOMPARE( track.artistId(), 0 );
QCOMPARE( track.price(), QString( "price" ) );
QCOMPARE( track.asin(), QString( "ASIN" ) );
QCOMPARE( track2.id(), 23 );
QCOMPARE( track2.trackNumber(), 5 );
QCOMPARE( track2.length(), (qint64)300 );
QCOMPARE( track2.playableUrl(), KUrl( "http://www.amazon.de/gp/dmusic/get_sample_url.html?ASIN=B007NV28OK" ) );
QCOMPARE( track2.albumId(), 42 );
QCOMPARE( track2.artistId(), 12 );
QCOMPARE( track2.price(), QString( "99" ) );
QCOMPARE( track2.asin(), QString( "B007NV28OK" ) );
}
void
TestAmazonTrack::testEmblem()
{
QStringList list;
list << "id" << "name" << "trackNumber" << "length" << "playableUrl" << "albumId" << "artistId" << "price" << "ASIN";
Meta::AmazonTrack track( list );
QSKIP("Emblem is only available once Amarok is installed.", SkipSingle);
QVERIFY( !track.emblem().isNull() );
}