/* * This file is part of the syndication library * * Copyright (C) 2006 Frank Osterfeld * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Library General Public * License as published by the Free Software Foundation; either * version 2 of the License, or (at your option) any later version. * * This library 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 * Library General Public License for more details. * * You should have received a copy of the GNU Library General Public License * along with this library; see the file COPYING.LIB. If not, write to * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, * Boston, MA 02110-1301, USA. * */ #include "testpersonimpl.h" #include "person.h" #include "personimpl.h" #include "tools.h" #include #include #include using Syndication::Person; using Syndication::PersonPtr; using Syndication::PersonImpl; void TestPersonImpl::fromString() { QStringList s; QList p; s.append(QString()); p.append(PersonPtr(new PersonImpl(QString(), QString(), QString()))); s.append(""); p.append(PersonPtr(new PersonImpl(QString(), QString(), QString()))); s.append("foo@bar.com"); p.append(PersonPtr(new PersonImpl(QString(), QString(), "foo@bar.com"))); s.append(""); p.append(PersonPtr(new PersonImpl(QString(), QString(), "foo@bar.com"))); s.append("Foo"); p.append(PersonPtr(new PersonImpl("Foo", QString(), QString()))); s.append("Foo M. Bar"); p.append(PersonPtr(new PersonImpl("Foo M. Bar", QString(), QString()))); s.append("Foo "); p.append(PersonPtr(new PersonImpl("Foo", QString(), "foo@bar.com"))); s.append("Foo Bar "); p.append(PersonPtr(new PersonImpl("Foo Bar", QString(), "foo@bar.com"))); s.append("John Doe (President) "); p.append(PersonPtr(new PersonImpl("John Doe (President)", QString(), "john@doe.com"))); s.append("John Doe (President)"); p.append(PersonPtr(new PersonImpl("John Doe (President)", QString(), QString() ))); s.append("John Doe (President)) "); p.append(PersonPtr(new PersonImpl("John Doe (President))", QString(), "john@doe.com"))); s.append("(President) John Doe "); p.append(PersonPtr(new PersonImpl("(President) John Doe", QString(), "john@doe.com"))); s.append(" (Foo Bar)"); p.append(PersonPtr(new PersonImpl("Foo Bar", QString(), "foo@bar.com"))); // s.append("OnAhlmann(mailto:onahlmann@gmail.com)"); // p.append(PersonPtr(new PersonImpl("OnAhlmann", QString(), "onahlmann@gmail.com"))); QList q; QStringList::ConstIterator it = s.constBegin(); QStringList::ConstIterator end = s.constEnd(); QList::ConstIterator pit = p.constBegin(); while (it != end) { PersonPtr q(Syndication::personFromString(*it)); QCOMPARE(q->name(), (*pit)->name()); QCOMPARE(q->email(), (*pit)->email()); QCOMPARE(q->uri(), (*pit)->uri()); ++it; ++pit; } } QTEST_MAIN(TestPersonImpl)