VCardSerializerTest.swift
41 lignes · 1381 octets
import XCTest @testable import Card2vcf final class VCardSerializerTest: XCTestCase { func testVcardMinimal() { let vcf = VCardSerializer.toVCard3(ContactCard(fullName: "Jean Dupont")) XCTAssertTrue(vcf.contains("BEGIN:VCARD")) XCTAssertTrue(vcf.contains("FN:Jean Dupont")) XCTAssertTrue(vcf.contains("END:VCARD")) } func testAccentsEtEchappement() { let vcf = VCardSerializer.toVCard3( ContactCard( fullName: "Élodie Martin", company: "Société; Générale", note: "Ligne1\nLigne2" ) ) XCTAssertTrue(vcf.contains("FN:Élodie Martin")) XCTAssertTrue(vcf.contains("NOTE:Ligne1\\nLigne2")) XCTAssertTrue(vcf.contains("ORG:Société\\; Générale")) } func testMultiTelEtEmail() { let vcf = VCardSerializer.toVCard3( ContactCard( fullName: "Test", phones: ["0612345678", "0145678901"], emails: ["a@b.fr", "c@d.fr"] ) ) let lines = vcf.components(separatedBy: "\n") XCTAssertEqual(2, lines.filter { $0.hasPrefix("TEL;") }.count) XCTAssertEqual(2, lines.filter { $0.hasPrefix("EMAIL;") }.count) } func testEscapeUnitaire() { XCTAssertEqual("a\\;b", VCardSerializer.escape("a;b")) } }
GitRust