Skip to content

Commit

Permalink
Add more tests
Browse files Browse the repository at this point in the history
  • Loading branch information
ben221199 committed Aug 7, 2024
1 parent 0e4cc71 commit fca2bc9
Show file tree
Hide file tree
Showing 2 changed files with 220 additions and 1 deletion.
2 changes: 1 addition & 1 deletion src/Elements/EPPPersonalElementImpl.php
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@

use YOCLIB\EPP\EPPElementImpl;

class EPPPersonalElementImpl extends EPPElementImpl implements EPPPersonalAndOtherElement {
class EPPPersonalElementImpl extends EPPElementImpl implements EPPPersonalElement {

}
219 changes: 219 additions & 0 deletions tests/EPPElementTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -3,20 +3,216 @@

use PHPUnit\Framework\TestCase;

use YOCLIB\EPP\Elements\EPPAbsoluteElement;
use YOCLIB\EPP\Elements\EPPAccessElement;
use YOCLIB\EPP\Elements\EPPAllElement;
use YOCLIB\EPP\Elements\EPPCheckElement;
use YOCLIB\EPP\Elements\EPPClientTransactionIdElement;
use YOCLIB\EPP\Elements\EPPCommandElement;
use YOCLIB\EPP\Elements\EPPCreateElement;
use YOCLIB\EPP\Elements\EPPDataCollectionPolicyElement;
use YOCLIB\EPP\Elements\EPPDeleteElement;
use YOCLIB\EPP\Elements\EPPEppElement;
use YOCLIB\EPP\Elements\EPPExpiryElement;
use YOCLIB\EPP\Elements\EPPExtensionElement;
use YOCLIB\EPP\Elements\EPPGreetingElement;
use YOCLIB\EPP\Elements\EPPHelloElement;
use YOCLIB\EPP\Elements\EPPInformationElement;
use YOCLIB\EPP\Elements\EPPLoginElement;
use YOCLIB\EPP\Elements\EPPLogoutElement;
use YOCLIB\EPP\Elements\EPPNoneElement;
use YOCLIB\EPP\Elements\EPPNullElement;
use YOCLIB\EPP\Elements\EPPOtherElement;
use YOCLIB\EPP\Elements\EPPPersonalAndOtherElement;
use YOCLIB\EPP\Elements\EPPPersonalElement;
use YOCLIB\EPP\Elements\EPPPollElement;
use YOCLIB\EPP\Elements\EPPRelativeElement;
use YOCLIB\EPP\Elements\EPPRenewElement;
use YOCLIB\EPP\Elements\EPPResponseElement;
use YOCLIB\EPP\Elements\EPPServerDateElement;
use YOCLIB\EPP\Elements\EPPServerIdElement;
use YOCLIB\EPP\Elements\EPPServiceMenuElement;
use YOCLIB\EPP\Elements\EPPStatementElement;
use YOCLIB\EPP\Elements\EPPTransferElement;
use YOCLIB\EPP\Elements\EPPUpdateElement;
use YOCLIB\EPP\EPPDocumentHelper;

class EPPElementTest extends TestCase{

public function testEPPAccessElement(){
$document = EPPDocumentHelper::createEPPDocument();

/**@var EPPAccessElement $access*/
$access = $document->createElementNS('urn:ietf:params:xml:ns:epp-1.0','access');
$this->assertInstanceOf(EPPAccessElement::class,$access);

$this->assertNull($access->getAll());
$this->assertNull($access->getNone());
$this->assertNull($access->getNull());
$this->assertNull($access->getOther());
$this->assertNull($access->getPersonal());
$this->assertNull($access->getPersonalOrOther());

$all = $document->createElementNS('urn:ietf:params:xml:ns:epp-1.0','all');
$access->appendChild($all);

$this->assertEquals($all,$access->getAll());
$this->assertInstanceOf(EPPAllElement::class,$all);

$none = $document->createElementNS('urn:ietf:params:xml:ns:epp-1.0','none');
$access->appendChild($none);

$this->assertEquals($none,$access->getNone());
$this->assertInstanceOf(EPPNoneElement::class,$none);

$null = $document->createElementNS('urn:ietf:params:xml:ns:epp-1.0','null');
$access->appendChild($null);

$this->assertEquals($null,$access->getNull());
$this->assertInstanceOf(EPPNullElement::class,$null);

$other = $document->createElementNS('urn:ietf:params:xml:ns:epp-1.0','other');
$access->appendChild($other);

$this->assertEquals($other,$access->getOther());
$this->assertInstanceOf(EPPOtherElement::class,$other);

$personal = $document->createElementNS('urn:ietf:params:xml:ns:epp-1.0','personal');
$access->appendChild($personal);

$this->assertEquals($personal,$access->getPersonal());
$this->assertInstanceOf(EPPPersonalElement::class,$personal);

$personalAndOther = $document->createElementNS('urn:ietf:params:xml:ns:epp-1.0','personalAndOther');
$access->appendChild($personalAndOther);

$this->assertEquals($personalAndOther,$access->getPersonalOrOther());
$this->assertInstanceOf(EPPPersonalAndOtherElement::class,$personalAndOther);
}

public function testEPPCommandElement(){
$document = EPPDocumentHelper::createEPPDocument();

/**@var EPPCommandElement $command*/
$command = $document->createElementNS('urn:ietf:params:xml:ns:epp-1.0','command');
$this->assertInstanceOf(EPPCommandElement::class,$command);

$this->assertNull($command->getCheck());
$this->assertNull($command->getCreate());
$this->assertNull($command->getDelete());
$this->assertNull($command->getInformation());
$this->assertNull($command->getLogin());
$this->assertNull($command->getLogout());
$this->assertNull($command->getPoll());
$this->assertNull($command->getRenew());
$this->assertNull($command->getTransfer());
$this->assertNull($command->getUpdate());
$this->assertNull($command->getExtension());
$this->assertNull($command->getClientTransactionID());

$check = $document->createElementNS('urn:ietf:params:xml:ns:epp-1.0','check');
$command->appendChild($check);

$this->assertEquals($check,$command->getCheck());
$this->assertInstanceOf(EPPCheckElement::class,$check);

$create = $document->createElementNS('urn:ietf:params:xml:ns:epp-1.0','create');
$command->appendChild($create);

$this->assertEquals($create,$command->getCreate());
$this->assertInstanceOf(EPPCreateElement::class,$create);

$delete = $document->createElementNS('urn:ietf:params:xml:ns:epp-1.0','delete');
$command->appendChild($delete);

$this->assertEquals($delete,$command->getDelete());
$this->assertInstanceOf(EPPDeleteElement::class,$delete);

$info = $document->createElementNS('urn:ietf:params:xml:ns:epp-1.0','info');
$command->appendChild($info);

$this->assertEquals($info,$command->getInformation());
$this->assertInstanceOf(EPPInformationElement::class,$info);

$login = $document->createElementNS('urn:ietf:params:xml:ns:epp-1.0','login');
$command->appendChild($login);

$this->assertEquals($login,$command->getLogin());
$this->assertInstanceOf(EPPLoginElement::class,$login);

$logout = $document->createElementNS('urn:ietf:params:xml:ns:epp-1.0','logout');
$command->appendChild($logout);

$this->assertEquals($logout,$command->getLogout());
$this->assertInstanceOf(EPPLogoutElement::class,$logout);

$poll = $document->createElementNS('urn:ietf:params:xml:ns:epp-1.0','poll');
$command->appendChild($poll);

$this->assertEquals($poll,$command->getPoll());
$this->assertInstanceOf(EPPPollElement::class,$poll);

$renew = $document->createElementNS('urn:ietf:params:xml:ns:epp-1.0','renew');
$command->appendChild($renew);

$this->assertEquals($renew,$command->getRenew());
$this->assertInstanceOf(EPPRenewElement::class,$renew);

$transfer = $document->createElementNS('urn:ietf:params:xml:ns:epp-1.0','transfer');
$command->appendChild($transfer);

$this->assertEquals($transfer,$command->getTransfer());
$this->assertInstanceOf(EPPTransferElement::class,$transfer);

$update = $document->createElementNS('urn:ietf:params:xml:ns:epp-1.0','update');
$command->appendChild($update);

$this->assertEquals($update,$command->getUpdate());
$this->assertInstanceOf(EPPUpdateElement::class,$update);

$extension = $document->createElementNS('urn:ietf:params:xml:ns:epp-1.0','extension');
$command->appendChild($extension);

$this->assertEquals($extension,$command->getExtension());
$this->assertInstanceOf(EPPExtensionElement::class,$extension);

$clTRID = $document->createElementNS('urn:ietf:params:xml:ns:epp-1.0','clTRID');
$command->appendChild($clTRID);

$this->assertEquals($clTRID,$command->getClientTransactionID());
$this->assertInstanceOf(EPPClientTransactionIdElement::class,$clTRID);
}

public function testEPPDataCollectionPolicyElement(){
$document = EPPDocumentHelper::createEPPDocument();

/**@var EPPDataCollectionPolicyElement $dcp*/
$dcp = $document->createElementNS('urn:ietf:params:xml:ns:epp-1.0','dcp');
$this->assertInstanceOf(EPPDataCollectionPolicyElement::class,$dcp);

$this->assertNull($dcp->getAccess());
$this->assertEmpty($dcp->getStatement());
$this->assertNull($dcp->getExpiry());

$access = $document->createElementNS('urn:ietf:params:xml:ns:epp-1.0','access');
$dcp->appendChild($access);

$this->assertEquals($access,$dcp->getAccess());
$this->assertInstanceOf(EPPAccessElement::class,$access);

$statement = $document->createElementNS('urn:ietf:params:xml:ns:epp-1.0','statement');
$dcp->appendChild($statement);

$this->assertEquals($statement,$dcp->getStatement()[0]);
$this->assertInstanceOf(EPPStatementElement::class,$statement);

$expiry = $document->createElementNS('urn:ietf:params:xml:ns:epp-1.0','expiry');
$dcp->appendChild($expiry);

$this->assertEquals($expiry,$dcp->getExpiry());
$this->assertInstanceOf(EPPExpiryElement::class,$expiry);
}

public function testEPPEppElement(){
$document = EPPDocumentHelper::createEPPDocument();

Expand Down Expand Up @@ -61,6 +257,29 @@ public function testEPPEppElement(){
$this->assertInstanceOf(EPPExtensionElement::class,$extension);
}

public function testEPPExpiryElement(){
$document = EPPDocumentHelper::createEPPDocument();

/**@var EPPExpiryElement $expiry*/
$expiry = $document->createElementNS('urn:ietf:params:xml:ns:epp-1.0','expiry');
$this->assertInstanceOf(EPPExpiryElement::class,$expiry);

$this->assertNull($expiry->getAbsolute());
$this->assertNull($expiry->getRelative());

$absolute = $document->createElementNS('urn:ietf:params:xml:ns:epp-1.0','absolute');
$expiry->appendChild($absolute);

$this->assertEquals($absolute,$expiry->getAbsolute());
$this->assertInstanceOf(EPPAbsoluteElement::class,$absolute);

$relative = $document->createElementNS('urn:ietf:params:xml:ns:epp-1.0','relative');
$expiry->appendChild($relative);

$this->assertEquals($relative,$expiry->getRelative());
$this->assertInstanceOf(EPPRelativeElement::class,$relative);
}

public function testEPPGreetingElement(){
$document = EPPDocumentHelper::createEPPDocument();

Expand Down

0 comments on commit fca2bc9

Please sign in to comment.