File indexing completed on 2024-03-24 03:56:23

0001 /*
0002     This file is part of the KContacts framework.
0003     SPDX-FileCopyrightText: 2007 KDE-PIM team <kde-pim@kde.org>
0004 
0005     SPDX-License-Identifier: LGPL-2.0-or-later
0006 */
0007 
0008 #include "testutils.h"
0009 #include <QFile>
0010 
0011 #include "vcardparser_p.h"
0012 
0013 using namespace KContacts;
0014 
0015 Addressee vcard1()
0016 {
0017     Addressee addr;
0018 
0019     addr.setName(QStringLiteral("Frank Dawson"));
0020     addr.setOrganization(QStringLiteral("Lotus Development Corporation"));
0021     KContacts::ResourceLocatorUrl url;
0022     url.setUrl(QUrl(QStringLiteral("http://home.earthlink.net/~fdawson")));
0023     addr.setUrl(url);
0024     addr.addEmail(Email(QStringLiteral("fdawson@earthlink.net")));
0025 
0026     Email mail(QStringLiteral("Frank_Dawson@Lotus.com"));
0027     mail.setPreferred(true);
0028     addr.addEmail(mail);
0029     addr.insertPhoneNumber(PhoneNumber(QStringLiteral("+1-919-676-9515"), PhoneNumber::Voice | PhoneNumber::Msg | PhoneNumber::Work));
0030     addr.insertPhoneNumber(PhoneNumber(QStringLiteral("+1-919-676-9564"), PhoneNumber::Fax | PhoneNumber::Work));
0031     Address a(Address::Work | Address::Postal | Address::Parcel);
0032     a.setStreet(QStringLiteral("6544 Battleford Drive"));
0033     a.setLocality(QStringLiteral("Raleigh"));
0034     a.setRegion(QStringLiteral("NC"));
0035     a.setPostalCode(QStringLiteral("27613-3502"));
0036     a.setCountry(QStringLiteral("U.S.A."));
0037     addr.insertAddress(a);
0038     return addr;
0039 }
0040 
0041 Addressee vcard2()
0042 {
0043     Addressee addr;
0044 
0045     addr.setName(QStringLiteral("Tim Howes"));
0046     addr.setOrganization(QStringLiteral("Netscape Communications Corp."));
0047     addr.addEmail(Email(QStringLiteral("howes@netscape.com")));
0048     addr.insertPhoneNumber(PhoneNumber(QStringLiteral("+1-415-937-3419"), //
0049                                        PhoneNumber::Voice | PhoneNumber::Msg | PhoneNumber::Work));
0050     addr.insertPhoneNumber(PhoneNumber(QStringLiteral("+1-415-528-4164"), //
0051                                        PhoneNumber::Fax | PhoneNumber::Work));
0052     Address a(Address::Work);
0053     a.setStreet(QStringLiteral("501 E. Middlefield Rd."));
0054     a.setLocality(QStringLiteral("Mountain View"));
0055     a.setRegion(QStringLiteral("CA"));
0056     a.setPostalCode(QStringLiteral("94043"));
0057     a.setCountry(QStringLiteral("U.S.A."));
0058     addr.insertAddress(a);
0059     return addr;
0060 }
0061 
0062 Addressee vcard3()
0063 {
0064     Addressee addr;
0065 
0066     addr.setName(QStringLiteral("ian geiser"));
0067     addr.setOrganization(QStringLiteral("Source eXtreme"));
0068     addr.addEmail(QStringLiteral("geiseri@yahoo.com"));
0069     addr.setTitle(QStringLiteral("VP of Engineering"));
0070     return addr;
0071 }
0072 
0073 QByteArray vcardAsText(const QString &location)
0074 {
0075     QByteArray text;
0076 
0077     QFile file(location);
0078     if (file.open(QIODevice::ReadOnly)) {
0079         text = file.readAll();
0080         file.close();
0081     }
0082 
0083     return text;
0084 }
0085 
0086 Addressee::List vCardsAsAddresseeList()
0087 {
0088     Addressee::List l;
0089 
0090     l.append(vcard1());
0091     l.append(vcard2());
0092     l.append(vcard3());
0093 
0094     return l;
0095 }
0096 
0097 QByteArray vCardsAsText()
0098 {
0099     QByteArray vcards = vcardAsText(QStringLiteral("tests/vcard1.vcf"));
0100     vcards += vcardAsText(QStringLiteral("tests/vcard2.vcf"));
0101     vcards += vcardAsText(QStringLiteral("tests/vcard3.vcf"));
0102 
0103     return vcards;
0104 }