Add getFullyOrPartiallyVerifiedSenderDomains
This function will replace getVerifiedDomains [MAILPOET-5786]
This commit is contained in:
committed by
Aschepikov
parent
aef1d65b6d
commit
01a3b3c5ca
@@ -160,24 +160,29 @@ class AuthorizedSenderDomainController {
|
|||||||
return $response;
|
return $response;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getSenderDomainsByStatus(string $status): array {
|
public function getSenderDomainsByStatus(array $status): array {
|
||||||
return array_filter($this->getAllRawData(), function(array $senderDomainData) use ($status) {
|
return array_filter($this->getAllRawData(), function(array $senderDomainData) use ($status) {
|
||||||
return ($senderDomainData['domain_status'] ?? null) === $status;
|
return in_array($senderDomainData['domain_status'] ?? null, $status);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getFullyVerifiedSenderDomains($domainsOnly = false): array {
|
public function getFullyVerifiedSenderDomains($domainsOnly = false): array {
|
||||||
$domainData = $this->getSenderDomainsByStatus(self::OVERALL_STATUS_VERIFIED);
|
$domainData = $this->getSenderDomainsByStatus([self::OVERALL_STATUS_VERIFIED]);
|
||||||
return $domainsOnly ? $this->extractDomains($domainData) : $domainData;
|
return $domainsOnly ? $this->extractDomains($domainData) : $domainData;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getPartiallyVerifiedSenderDomains($domainsOnly = false): array {
|
public function getPartiallyVerifiedSenderDomains($domainsOnly = false): array {
|
||||||
$domainData = $this->getSenderDomainsByStatus(self::OVERALL_STATUS_PARTIALLY_VERIFIED);
|
$domainData = $this->getSenderDomainsByStatus([self::OVERALL_STATUS_PARTIALLY_VERIFIED]);
|
||||||
return $domainsOnly ? $this->extractDomains($domainData) : $domainData;
|
return $domainsOnly ? $this->extractDomains($domainData) : $domainData;
|
||||||
}
|
}
|
||||||
|
|
||||||
public function getUnverifiedSenderDomains($domainsOnly = false): array {
|
public function getUnverifiedSenderDomains($domainsOnly = false): array {
|
||||||
$domainData = $this->getSenderDomainsByStatus(self::OVERALL_STATUS_UNVERIFIED);
|
$domainData = $this->getSenderDomainsByStatus([self::OVERALL_STATUS_UNVERIFIED]);
|
||||||
|
return $domainsOnly ? $this->extractDomains($domainData) : $domainData;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function getFullyOrPartiallyVerifiedSenderDomains($domainsOnly = false): array {
|
||||||
|
$domainData = $this->getSenderDomainsByStatus([self::OVERALL_STATUS_PARTIALLY_VERIFIED,self::OVERALL_STATUS_VERIFIED]);
|
||||||
return $domainsOnly ? $this->extractDomains($domainData) : $domainData;
|
return $domainsOnly ? $this->extractDomains($domainData) : $domainData;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -227,13 +227,13 @@ class AuthorizedSenderDomainControllerTest extends \MailPoetTest {
|
|||||||
|
|
||||||
$controller = $this->getController($bridgeMock);
|
$controller = $this->getController($bridgeMock);
|
||||||
|
|
||||||
$domainsByStatus = $controller->getSenderDomainsByStatus('verified');
|
$domainsByStatus = $controller->getSenderDomainsByStatus(['verified']);
|
||||||
$this->assertEqualsCanonicalizing([$verifiedDomain], $domainsByStatus);
|
$this->assertEqualsCanonicalizing([$verifiedDomain], $domainsByStatus);
|
||||||
|
|
||||||
$domainsByStatus = $controller->getSenderDomainsByStatus('partially-verified');
|
$domainsByStatus = $controller->getSenderDomainsByStatus(['partially-verified']);
|
||||||
$this->assertEqualsCanonicalizing([$partiallyVerifiedDomain], $domainsByStatus);
|
$this->assertEqualsCanonicalizing([$partiallyVerifiedDomain], $domainsByStatus);
|
||||||
|
|
||||||
$domainsByStatus = $controller->getSenderDomainsByStatus('unverified');
|
$domainsByStatus = $controller->getSenderDomainsByStatus(['unverified']);
|
||||||
$this->assertEqualsCanonicalizing([$unverifiedDomain], $domainsByStatus);
|
$this->assertEqualsCanonicalizing([$unverifiedDomain], $domainsByStatus);
|
||||||
|
|
||||||
$grouped = $controller->getSenderDomainsGroupedByStatus();
|
$grouped = $controller->getSenderDomainsGroupedByStatus();
|
||||||
@@ -249,6 +249,9 @@ class AuthorizedSenderDomainControllerTest extends \MailPoetTest {
|
|||||||
$domains = $controller->getPartiallyVerifiedSenderDomains(true);
|
$domains = $controller->getPartiallyVerifiedSenderDomains(true);
|
||||||
$this->assertEqualsCanonicalizing(['example2.com'], $domains);
|
$this->assertEqualsCanonicalizing(['example2.com'], $domains);
|
||||||
|
|
||||||
|
$domains = $controller->getFullyOrPartiallyVerifiedSenderDomains(true);
|
||||||
|
$this->assertEqualsCanonicalizing(['example1.com', 'example2.com'], $domains);
|
||||||
|
|
||||||
$domains = $controller->getUnverifiedSenderDomains(true);
|
$domains = $controller->getUnverifiedSenderDomains(true);
|
||||||
$this->assertEqualsCanonicalizing(['example3.com'], $domains);
|
$this->assertEqualsCanonicalizing(['example3.com'], $domains);
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user