diff --git a/enzevalos_iphoneTests/GeneratedMocks.swift b/enzevalos_iphoneTests/GeneratedMocks.swift index 75ffebd93b5f306aba22be6ebe65566ddb842215..d851f4eb5f91ae075a8539d074f87d2053ea98b3 100644 --- a/enzevalos_iphoneTests/GeneratedMocks.swift +++ b/enzevalos_iphoneTests/GeneratedMocks.swift @@ -1,4 +1,4 @@ -// MARK: - Mocks generated from file: enzevalos_iphone/AuthenticationModel.swift at 2020-03-25 16:50:54 +0000 +// MARK: - Mocks generated from file: enzevalos_iphone/AuthenticationModel.swift at 2020-03-25 20:03:07 +0000 // // AuthenticationModel.swift @@ -653,7 +653,7 @@ import Foundation } -// MARK: - Mocks generated from file: enzevalos_iphone/AuthenticationViewModel.swift at 2020-03-25 16:50:54 +0000 +// MARK: - Mocks generated from file: enzevalos_iphone/AuthenticationViewModel.swift at 2020-03-25 20:03:07 +0000 // // AuthenticationViewModel.swift diff --git a/enzevalos_iphoneTests/phishing/MailComparisonTests.swift b/enzevalos_iphoneTests/phishing/MailComparisonTests.swift index 25fceea5809391e78fe573b3eaf28425edd27e89..3e35269d99fc55fe9a22032e96a11d351b4731d9 100644 --- a/enzevalos_iphoneTests/phishing/MailComparisonTests.swift +++ b/enzevalos_iphoneTests/phishing/MailComparisonTests.swift @@ -19,8 +19,6 @@ class MailComparisonTests: XCTestCase { datahandler.reset() XCTAssertEqual(datahandler.getContacts().count, 0) XCTAssertEqual(datahandler.getAddresses().count, 0) - datahandler.getContact(name: "alice", address: "alice@example.com", key: "", prefer_enc: false) - datahandler.getContact(name: "david", address: "david@example.com", key: "", prefer_enc: false) } override func tearDown() { @@ -28,10 +26,6 @@ class MailComparisonTests: XCTestCase { super.tearDown() } - func createUser(adr: String = String.random().lowercased(), name: String = String.random()) -> MCOAddress { - return MCOAddress.init(displayName: name, mailbox: adr.lowercased()) - } - func testMail(from: MCOAddress, to: [MCOAddress], cc: [MCOAddress], bcc: [MCOAddress], flags: MCOMessageFlag = MCOMessageFlag.init(rawValue: 0), folder: String = "INBOX", date: Date = Date(timeIntervalSince1970: TimeInterval(arc4random())), cryptoObject: CryptoObject? = nil, body: String = String.random(length: 20)) -> PersistentMail? { let subject = String.random(length: 20) @@ -50,66 +44,56 @@ class MailComparisonTests: XCTestCase { /************** Code ******************/ - public var addresses: [MailAddress]{ - get{ - if let addrs = contact.addresses as? Set<Mail_Address> { - return Array(addrs) - } - return [] - } - } - @NSManaged public var contact: EnzevalosContact - - public func compareSenderToContacts(_ mail: PersistentMail? = nil) -> String { + @NSManaged public var contact: EnzevalosContact + public func compareSenderToContacts(_ mail: PersistentMail? ) -> String { let senderAddress = mail?.from.mailAddress - return (senderAddress!) -// let senderIsAlreadyKnown = mail?.from.contact -// let senderContact = mail?.from.contact?.cnContact?.getMailAddresses() // 1. ich will wissen, ob der sender bekannt ist, deshalb erst einmal equal test mit sender und kontaktbuch durch cncontact + let contacts = datahandler.getContacts() for cont in contacts{ - let addr = cont.getMailAddresses() - for add in addr{ - if add.mailAddress == senderAddress{ - return "true" - } + let addr = mail?.from.contact?.cnContact + if addr != nil{ + return "is a contact" + } + if cont.isAddress(mailadr: senderAddress!){ + return "send mails before" } } - return "false" + // 2. ich will wissen, ob der sender schon eine mail geschickt hat, wenn nicht im kontaktbuch, deshalb vergleich mit contact + let knownMailAddresses = contact.getMailAddresses() + for knownAddress in knownMailAddresses{ + if knownAddress.mailAddress == senderAddress{ + return "has alrady send an email" + } + + } + /* + if mail?.from.contact?.getMailAddresses() == senderAddress{ + return "has alrady send an email" + }*/ + return "false" // 3. ich will wissen, ob wenn der sender unbekannt, eine ähnliche mailaddresse schon einmal ankam - - - -/* if (senderAddress == contact.cnContact?.getMailAddresses()){ - print("1") - return [] - } - - for addr in addresses { - if senderAddress == addr.mailAddress { - print("2") - return [] - } - print("3") - return [] - } - print("4") - return []*/ + } /************** End Code ****************/ func testCompareSenderToContacts () { + let x = datahandler.getContactByMCOAddress(address: user) + var contacts = datahandler.getContacts() + contacts.append(x) let mail_1 = testMail(from: user, to: [], cc: [], bcc: []) let mail_2 = testMail(from: user_1, to: [], cc: [], bcc: []) let mail_3 = testMail(from: user_2, to: [], cc: [], bcc: []) let mail_4 = testMail(from: user_2, to: [], cc: [], bcc: []) -// let mailsInInbox: [PersistentMail] = [mail_1!, mail_2!, mail_3!, mail_4!] - - XCTAssertEqual(mail_1?.from.mailAddress, compareSenderToContacts(mail_1)) + let mailsInInbox: [PersistentMail] = [mail_1!, mail_2!, mail_3!, mail_4!] + XCTAssertEqual("is a contact", compareSenderToContacts(mail_1)) + XCTAssertEqual("send mails before", compareSenderToContacts(mail_2)) +// XCTAssertEqual("has alrady send an email", compareSenderToContacts(mailsInInbox[2])) +// XCTAssertEqual("false", compareSenderToContacts(mail_2)) XCTAssertNotEqual(testMail(from: user, to: [], cc: [], bcc: [])?.from.contact?.cnContact?.getMailAddresses().count, 0 )