package com.ausregistry.jtoolkit2.se; import static org.junit.Assert.*; import org.junit.Before; import org.junit.Test; import com.ausregistry.jtoolkit2.EPPDateFormatter; import com.ausregistry.jtoolkit2.xml.XMLDocument; import com.ausregistry.jtoolkit2.xml.XMLParser; public class EnumDomainInfoResponseTest { private static final String XML = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?><epp xmlns=\"urn:ietf:params:xml:ns:epp-1.0\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd\"><response><result code=\"1000\"><msg>Command completed successfully</msg></result><resData><domain:infData xmlns:domain=\"urn:ietf:params:xml:ns:domain-1.0\" xsi:schemaLocation=\"urn:ietf:params:xml:ns:domain-1.0 domain-1.0.xsd\"><domain:name>3.8.0.0.6.9.2.3.6.1.4.4.e164.arpa</domain:name><domain:roid>EXAMPLE1-REP</domain:roid><domain:status s=\"ok\"/><domain:registrant>jd1234</domain:registrant><domain:contact type=\"admin\">sh8013</domain:contact><domain:contact type=\"tech\">sh8013</domain:contact><domain:ns><domain:hostObj>ns1.example.com</domain:hostObj><domain:hostObj>ns2.example.com</domain:hostObj></domain:ns><domain:host>ns1.example.com</domain:host><domain:host>ns2.example.com</domain:host><domain:clID>ClientX</domain:clID><domain:crID>ClientY</domain:crID><domain:crDate>1999-04-03T22:00:00.0Z</domain:crDate><domain:upID>ClientX</domain:upID><domain:upDate>1999-12-03T09:00:00.0Z</domain:upDate><domain:exDate>2005-04-03T22:00:00.0Z</domain:exDate><domain:trDate>2000-04-08T09:00:00.0Z</domain:trDate><domain:authInfo><domain:pw>2fooBAR</domain:pw></domain:authInfo></domain:infData></resData><extension><e164:infData xmlns:e164=\"urn:ietf:params:xml:ns:e164epp-1.0\" xsi:schemaLocation=\"urn:ietf:params:xml:ns:e164epp-1.0 e164epp-1.0.xsd\"><e164:naptr><e164:order>10</e164:order><e164:pref>100</e164:pref><e164:flags>u</e164:flags><e164:svc>E2U+sip</e164:svc><e164:regex>\"!^.*$!sip:info@example.com!\"</e164:regex></e164:naptr><e164:naptr><e164:order>10</e164:order><e164:pref>102</e164:pref><e164:flags>u</e164:flags><e164:svc>E2U+msg</e164:svc><e164:regex>\"!^.*$!mailto:info@example.com!\"</e164:regex></e164:naptr></e164:infData></extension><trID><clTRID>ABC-12345</clTRID><svTRID>54322-XYZ</svTRID></trID></response></epp>"; private EnumDomainInfoResponse response; @Before public void setUp() throws Exception { response = new EnumDomainInfoResponse(); XMLParser parser = new XMLParser(); XMLDocument doc = parser.parse(XML); response.fromXML(doc); } @Test public void testGetNAPTRs() { NAPTR[] naptrs = response.getNAPTRs(); assertEquals(2, naptrs.length); assertEquals(10, naptrs[0].getOrder()); assertEquals(100, naptrs[0].getPreference()); assertEquals("u", naptrs[0].getFlags()); assertEquals("E2U+sip", naptrs[0].getService()); assertEquals("\"!^.*$!sip:info@example.com!\"", naptrs[0].getRegex()); assertEquals(null, naptrs[0].getReplacement()); assertEquals(10, naptrs[1].getOrder()); assertEquals(102, naptrs[1].getPreference()); assertEquals("u", naptrs[1].getFlags()); assertEquals("E2U+msg", naptrs[1].getService()); assertEquals("\"!^.*$!mailto:info@example.com!\"", naptrs[1].getRegex()); assertEquals(null, naptrs[1].getReplacement()); } @Test public void testGetStatuses() { assertArrayEquals( new Status[] { new Status("ok") }, response.getStatuses()); } @Test public void testGetName() { assertEquals("3.8.0.0.6.9.2.3.6.1.4.4.e164.arpa", response.getName()); } @Test public void testGetPW() { assertEquals("2fooBAR", response.getPW()); } @Test public void testGetExpireDate() { assertEquals( EPPDateFormatter.fromXSDateTime("2005-04-03T22:00:00.0Z"), response.getExpireDate()); } @Test public void testGetRegistrantID() { assertEquals("jd1234", response.getRegistrantID()); } @Test public void testGetTechContacts() { String[] contacts = response.getTechContacts(); assertEquals(1, contacts.length); assertEquals("sh8013", contacts[0]); } @Test public void testGetAdminContacts() { String[] contacts = response.getAdminContacts(); assertEquals(1, contacts.length); assertEquals("sh8013", contacts[0]); } @Test public void testGetBillingContacts() { String[] contacts = response.getBillingContacts(); assertNull(contacts); } @Test public void testGetNameservers() { String[] ns = response.getNameservers(); assertEquals(2, ns.length); assertEquals("ns1.example.com", ns[0]); assertEquals("ns2.example.com", ns[1]); } @Test public void testGetSubordinateHosts() { String[] hosts = response.getSubordinateHosts(); assertEquals(2, hosts.length); assertEquals("ns1.example.com", hosts[0]); assertEquals("ns2.example.com", hosts[1]); } @Test public void testGetROID() { assertEquals("EXAMPLE1-REP", response.getROID()); } @Test public void testGetCreateDate() { assertEquals( EPPDateFormatter.fromXSDateTime("1999-04-03T22:00:00.0Z"), response.getCreateDate()); } @Test public void testGetUpdateDate() { assertEquals( EPPDateFormatter.fromXSDateTime("1999-12-03T09:00:00.0Z"), response.getUpdateDate()); } @Test public void testGetCreateClient() { assertEquals("ClientY", response.getCreateClient()); } @Test public void testGetUpdateClient() { assertEquals("ClientX", response.getUpdateClient()); } @Test public void testGetSponsorClient() { assertEquals("ClientX", response.getSponsorClient()); } }