public function testPackageWithMultipleSendables() { $email = $this->createEmailAndAddToPackage(); $email->addRecipientByEmail("*****@*****.**"); $email->setSubject("A test email"); $email->setText("This is the end, my lonely friend, the end."); $email = $this->createEmailAndAddToPackage(); $email->addRecipientByEmail("*****@*****.**"); $email->setSubject("A second test email"); $email->setText("This is the end, my lonely friend, the end."); $this->package->title = "A test communication"; $this->package->send(); $this->assertCount(2, CommunicationItem::find()); }
public function testCommunicationEmailProviderCantBeAProcessor() { $this->assertCount(0, CommunicationItem::find(), "CommunicationItem count was not 0"); $this->assertCount(0, Communication::find(), "Communication count was not 0"); $email = new SimpleEmail(); $email->setSubject("A fine day in the park"); $email->addRecipientByEmail("*****@*****.**", "Joe Bloggs"); $email->setHtml("<html><head>Test Head</head><body>Test Body</body></html>"); $email->setText("Test Text Body"); CommunicationProcessor::setProviderClassName(EmailProvider::class, CommunicationEmailProvider::class); try { EmailProvider::setProviderClassName(CommunicationEmailProvider::class); EmailProvider::getProvider()->send($email); $this->fail('Email should not sent due to invalid Communication Provider being set'); } catch (InvalidProviderException $exception) { } }