Tests.RfcAuthorTests._parseCard1 C# (CSharp) Method

_parseCard1() private method

private _parseCard1 ( Thought.vCards.vCard card ) : void
card Thought.vCards.vCard
return void
        private void _parseCard1(vCard card)
        {

            // 01 BEGIN:vCard
            // 02 VERSION:3.0
            // 03 FN:Frank Dawson
            // 04 ORG:Lotus Development Corporation
            // 05 ADR;TYPE=WORK,POSTAL,PARCEL:;;6544 Battleford Drive
            // 06  ;Raleigh;NC;27613-3502;U.S.A.
            // 07 TEL;TYPE=VOICE,MSG,WORK:+1-919-676-9515
            // 08 TEL;TYPE=FAX,WORK:+1-919-676-9564
            // 09 EMAIL;TYPE=INTERNET,PREF:[email protected]
            // 10 EMAIL;TYPE=INTERNET:[email protected]
            // 11 URL:http://home.earthlink.net/~fdawson
            // 12 END:vCard

            Assert.AreEqual(
                "Frank Dawson",
                card.FormattedName,
                "FN on line 3 is different.");

            Assert.AreEqual(
                "Lotus Development Corporation",
                card.Organization,
                "ORG on line 4 is different.");

            Assert.AreEqual(
                1,
                card.DeliveryAddresses.Count,
                "One address expected in card 1 at line 5.");

            // 05 ADR;TYPE=WORK,POSTAL,PARCEL:;;6544 Battleford Drive
            // 06  ;Raleigh;NC;27613-3502;U.S.A.

            Assert.IsTrue(
                card.DeliveryAddresses[0].IsWork,
                "ADR on lines 5-6 is a work address.");

            Assert.IsTrue(
                card.DeliveryAddresses[0].IsPostal,
                "ADR on lines 5-6 is a postal address.");

            Assert.IsTrue(
                card.DeliveryAddresses[0].IsParcel,
                "ADR on lines 5-6 is a parcel address.");

            Assert.AreEqual(
                "6544 Battleford Drive",
                card.DeliveryAddresses[0].Street,
                "ADR on lines 5-6 has a different street address.");

            Assert.AreEqual(
                "Raleigh",
                card.DeliveryAddresses[0].City,
                "ADR on lines 5-6 has a different city.");

            Assert.AreEqual(
                "27613-3502",
                card.DeliveryAddresses[0].PostalCode,
                "ADR on lines 5-6 has a different postal code.");

            Assert.AreEqual(
                "U.S.A.",
                card.DeliveryAddresses[0].Country,
                "ADR on lines 5-6 has a different country.");

            // 07 TEL;TYPE=VOICE,MSG,WORK:+1-919-676-9515
            // 08 TEL;TYPE=FAX,WORK:+1-919-676-9564

            Assert.AreEqual(
                2,
                card.Phones.Count,
                "Two phones are expected at lines 7-8.");

            Assert.IsTrue(
                card.Phones[0].IsVoice,
                "TEL at line 7 is a voice number.");

            Assert.IsTrue(
                card.Phones[0].IsMessagingService,
                "TEL at line 7 is a messaging service.");

            Assert.IsTrue(
                card.Phones[0].IsWork,
                "TEL at line 7 is a work number.");

            Assert.AreEqual(
                "+1-919-676-9515",
                card.Phones[0].FullNumber,
                "TEL at line 7 has a different number.");

            // 08 TEL;TYPE=FAX,WORK:+1-919-676-9564

            Assert.IsTrue(
                card.Phones[1].IsFax,
                "TEL at line 8 is a fax number.");

            Assert.IsTrue(
                card.Phones[1].IsWork,
                "TEL at line 8 is a work number.");

            Assert.AreEqual(
                "+1-919-676-9564",
                card.Phones[1].FullNumber,
                "TEL at line 8 has a different number.");

            // 09 EMAIL;TYPE=INTERNET,PREF:[email protected]
            // 10 EMAIL;TYPE=INTERNET:[email protected]

            Assert.AreEqual(
                2,
                card.EmailAddresses.Count,
                "Two email addresses are at lines 9 and 10.");

            Assert.IsTrue(
                card.EmailAddresses[0].EmailType == vCardEmailAddressType.Internet,
                "EMAIL at line 9 is an Internet email address.");

            Assert.IsTrue(
                card.EmailAddresses[0].IsPreferred,
                "EMAIL at line 9 is a preferred email address.");

            Assert.AreEqual(
                "[email protected]",
                card.EmailAddresses[0].Address,
                "EMAIL at line 9 has a different value.");

            // 10 EMAIL;TYPE=INTERNET:[email protected]

            Assert.AreEqual(
                vCardEmailAddressType.Internet,
                card.EmailAddresses[1].EmailType,
                "EMAIL at line 10 is an Internet email address.");

            Assert.AreEqual(
                "[email protected]",
                card.EmailAddresses[1].Address,
                "EMAIL at line 10 has a different value.");

            // 11 URL:http://home.earthlink.net/~fdawson

            Assert.AreEqual(
                1,
                card.Websites.Count,
                "One URL is located at line 11.");

            Assert.AreEqual(
                "http://home.earthlink.net/~fdawson",
                card.Websites[0].Url,
                "URL at line 11 has a different value.");

        }