File indexing completed on 2024-04-21 04:54:20

0001 /*
0002     SPDX-FileCopyrightText: 2004-2006 Richard Lärkäng <nouseforaname@home.se>
0003 
0004     SPDX-License-Identifier: LGPL-2.0-or-later
0005 */
0006 
0007 #include "utf8test.h"
0008 #include "libkcddb/client.h"
0009 #include "libkcddb/cache.h"
0010 #include "libkcddb/lookup.h"
0011 #include <QTest>
0012 
0013 void Utf8Test::testLookup()
0014 {
0015   using namespace KCDDB;
0016 
0017   Client c;
0018   c.config().setHostname(QString::fromUtf8("gnudb.gnudb.org"));
0019   c.config().setPort(80);
0020   c.config().setCacheLookupEnabled(false);
0021   c.config().setFreedbLookupEnabled(true);
0022   c.config().setMusicBrainzLookupEnabled(false);
0023   c.config().setFreedbLookupTransport(Lookup::HTTP);
0024 
0025   TrackOffsetList list;
0026 
0027   list
0028   << 150
0029   << 61408
0030   << 177675;
0031 
0032   c.lookup(list);
0033 
0034   CDInfoList response = c.lookupResponse();
0035 
0036   CDInfoList::ConstIterator it;
0037 
0038   bool hasRunTest = false;
0039 
0040   for (it = response.constBegin(); it != response.constEnd(); ++it)
0041   {
0042     CDInfo i(*it);
0043 
0044     if (i.get(QString::fromUtf8("discid")) == QString::fromUtf8("13093f02") && i.get(Category) == QString::fromUtf8("blues"))
0045     {
0046       // If revision doesn't match, test probably needs to be updated
0047       // See: http://www.gnudb.org/gnudb/blues/13093f02 for updated data
0048       QCOMPARE(i.get(QString::fromUtf8("revision")).toInt(), 3);
0049 
0050       QString artist = QString::fromUtf8("神城麻郁(浪川大輔)/宮藤深衣奈(中原麻衣)/小野寺樺恋(清水愛)/織部椿(根谷美智子)/島崎康生(鈴村健一)/風見みずほ(井上喜久子)/森野苺(田村ゆかり)/四道跨(三浦祥朗)/四道晴子(新谷良子)/佐川秋那(浅野真澄)/真下双葉(佐久間紅美)/菊池浩美(進藤尚美)/草薙桂(保志総一郎)/縁川小石(川澄綾子)/間雲漂介(岩田光央)/水澄楓(大原さやか)/まりえ(金田朋子)/山田政臣(杉田智和)神城麻郁(浪川大輔)/宮藤深衣奈(中原麻衣)/小野寺樺恋(清水愛)/織部椿(根谷美智子)/島崎康生(鈴村健一)/風見みずほ(井上喜久子)/森野苺(田村ゆかり)/四道跨(三Y祥朗)/四道晴子(新谷良子)/佐川秋那(浅野真澄)/真下双葉(佐久間紅美)/菊池浩美(進藤尚美)/草薙桂(保志総一郎)/縁川小石(川澄綾子)/間雲漂介(岩田光央)/水澄楓(大原さやか)/まりえ(金田朋子)/山田政臣(杉田智和)");
0051 
0052       QCOMPARE(i.get(Artist).toString(),artist);
0053       QCOMPARE(i.get(Title).toString(),QString::fromUtf8("みずほ先生とはちみつツインズ ドラマアルバム2時間目「百合百合ツインズ」"));
0054       QCOMPARE(i.get(Genre).toString(),QString::fromUtf8("Anime"));
0055       QCOMPARE(i.get(Year).toInt(),2004);
0056       QCOMPARE(i.track(0).get(Title).toString(),QString::fromUtf8("第EX話 おねがい☆全員集合"));
0057       QCOMPARE(i.track(1).get(Title).toString(),QString::fromUtf8("エピローグ"));
0058       QCOMPARE(i.track(0).get(Comment).toString(),QString::fromUtf8(""));
0059       QCOMPARE(i.track(1).get(Comment).toString(),QString::fromUtf8(""));
0060       for (int j=0; j <= 1; j++)
0061       {
0062         QCOMPARE(i.track(j).get(Artist).toString(),artist);
0063       }
0064 
0065       hasRunTest = true;
0066     }
0067   }
0068 
0069   QVERIFY(hasRunTest);
0070 }
0071 
0072 QTEST_GUILESS_MAIN(Utf8Test)
0073 
0074 #include "moc_utf8test.cpp"