mirror of
https://github.com/google/nomulus.git
synced 2025-08-11 12:09:39 +02:00
Change packageToken extension to bulkToken extension (#2091)
* Change packageToken extension to bulkToken extension * Small fixes
This commit is contained in:
parent
48ddbbe4ee
commit
78e1718c52
15 changed files with 89 additions and 90 deletions
|
@ -41,10 +41,10 @@ import google.registry.model.domain.Domain;
|
||||||
import google.registry.model.domain.DomainCommand.Info;
|
import google.registry.model.domain.DomainCommand.Info;
|
||||||
import google.registry.model.domain.DomainCommand.Info.HostsRequest;
|
import google.registry.model.domain.DomainCommand.Info.HostsRequest;
|
||||||
import google.registry.model.domain.DomainInfoData;
|
import google.registry.model.domain.DomainInfoData;
|
||||||
|
import google.registry.model.domain.bulktoken.BulkTokenExtension;
|
||||||
|
import google.registry.model.domain.bulktoken.BulkTokenResponseExtension;
|
||||||
import google.registry.model.domain.fee06.FeeInfoCommandExtensionV06;
|
import google.registry.model.domain.fee06.FeeInfoCommandExtensionV06;
|
||||||
import google.registry.model.domain.fee06.FeeInfoResponseExtensionV06;
|
import google.registry.model.domain.fee06.FeeInfoResponseExtensionV06;
|
||||||
import google.registry.model.domain.packagetoken.PackageTokenExtension;
|
|
||||||
import google.registry.model.domain.packagetoken.PackageTokenResponseExtension;
|
|
||||||
import google.registry.model.domain.rgp.GracePeriodStatus;
|
import google.registry.model.domain.rgp.GracePeriodStatus;
|
||||||
import google.registry.model.domain.rgp.RgpInfoExtension;
|
import google.registry.model.domain.rgp.RgpInfoExtension;
|
||||||
import google.registry.model.eppcommon.AuthInfo;
|
import google.registry.model.eppcommon.AuthInfo;
|
||||||
|
@ -95,7 +95,7 @@ public final class DomainInfoFlow implements Flow {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public EppResponse run() throws EppException {
|
public EppResponse run() throws EppException {
|
||||||
extensionManager.register(FeeInfoCommandExtensionV06.class, PackageTokenExtension.class);
|
extensionManager.register(FeeInfoCommandExtensionV06.class, BulkTokenExtension.class);
|
||||||
flowCustomLogic.beforeValidation();
|
flowCustomLogic.beforeValidation();
|
||||||
validateRegistrarIsLoggedIn(registrarId);
|
validateRegistrarIsLoggedIn(registrarId);
|
||||||
extensionManager.validate();
|
extensionManager.validate();
|
||||||
|
@ -155,13 +155,13 @@ public final class DomainInfoFlow implements Flow {
|
||||||
if (!gracePeriodStatuses.isEmpty()) {
|
if (!gracePeriodStatuses.isEmpty()) {
|
||||||
extensions.add(RgpInfoExtension.create(gracePeriodStatuses));
|
extensions.add(RgpInfoExtension.create(gracePeriodStatuses));
|
||||||
}
|
}
|
||||||
Optional<PackageTokenExtension> packageInfo =
|
Optional<BulkTokenExtension> packageInfo =
|
||||||
eppInput.getSingleExtension(PackageTokenExtension.class);
|
eppInput.getSingleExtension(BulkTokenExtension.class);
|
||||||
if (packageInfo.isPresent()) {
|
if (packageInfo.isPresent()) {
|
||||||
// Package info was requested.
|
// Package info was requested.
|
||||||
if (isSuperuser || registrarId.equals(domain.getCurrentSponsorRegistrarId())) {
|
if (isSuperuser || registrarId.equals(domain.getCurrentSponsorRegistrarId())) {
|
||||||
// Only show package info to owning registrar or superusers
|
// Only show package info to owning registrar or superusers
|
||||||
extensions.add(PackageTokenResponseExtension.create(domain.getCurrentPackageToken()));
|
extensions.add(BulkTokenResponseExtension.create(domain.getCurrentPackageToken()));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Optional<FeeInfoCommandExtensionV06> feeInfo =
|
Optional<FeeInfoCommandExtensionV06> feeInfo =
|
||||||
|
|
|
@ -12,12 +12,12 @@
|
||||||
// See the License for the specific language governing permissions and
|
// See the License for the specific language governing permissions and
|
||||||
// limitations under the License.
|
// limitations under the License.
|
||||||
|
|
||||||
package google.registry.model.domain.packagetoken;
|
package google.registry.model.domain.bulktoken;
|
||||||
|
|
||||||
import google.registry.model.ImmutableObject;
|
import google.registry.model.ImmutableObject;
|
||||||
import google.registry.model.eppinput.EppInput.CommandExtension;
|
import google.registry.model.eppinput.EppInput.CommandExtension;
|
||||||
import javax.xml.bind.annotation.XmlRootElement;
|
import javax.xml.bind.annotation.XmlRootElement;
|
||||||
|
|
||||||
/** A package token extension that may be present on EPP domain commands. */
|
/** A bulk token extension that may be present on EPP domain commands. */
|
||||||
@XmlRootElement(name = "info")
|
@XmlRootElement(name = "info")
|
||||||
public class PackageTokenExtension extends ImmutableObject implements CommandExtension {}
|
public class BulkTokenExtension extends ImmutableObject implements CommandExtension {}
|
|
@ -12,7 +12,7 @@
|
||||||
// See the License for the specific language governing permissions and
|
// See the License for the specific language governing permissions and
|
||||||
// limitations under the License.
|
// limitations under the License.
|
||||||
|
|
||||||
package google.registry.model.domain.packagetoken;
|
package google.registry.model.domain.bulktoken;
|
||||||
|
|
||||||
import google.registry.model.ImmutableObject;
|
import google.registry.model.ImmutableObject;
|
||||||
import google.registry.model.domain.token.AllocationToken;
|
import google.registry.model.domain.token.AllocationToken;
|
||||||
|
@ -24,18 +24,18 @@ import javax.xml.bind.annotation.XmlRootElement;
|
||||||
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
|
import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* An XML data object that represents a package token extension that may be present on the response
|
* An XML data object that represents a bulk token extension that may be present on the response to
|
||||||
* to EPP domain info commands.
|
* EPP domain info commands.
|
||||||
*/
|
*/
|
||||||
@XmlRootElement(name = "packageData")
|
@XmlRootElement(name = "bulkData")
|
||||||
public class PackageTokenResponseExtension extends ImmutableObject implements ResponseExtension {
|
public class BulkTokenResponseExtension extends ImmutableObject implements ResponseExtension {
|
||||||
|
|
||||||
/** Token string of the PACKAGE token the name belongs to. */
|
/** Token string of the PACKAGE token the name belongs to. */
|
||||||
@XmlJavaTypeAdapter(TrimWhitespaceAdapter.class)
|
@XmlJavaTypeAdapter(TrimWhitespaceAdapter.class)
|
||||||
String token;
|
String token;
|
||||||
|
|
||||||
public static PackageTokenResponseExtension create(Optional<VKey<AllocationToken>> tokenKey) {
|
public static BulkTokenResponseExtension create(Optional<VKey<AllocationToken>> tokenKey) {
|
||||||
PackageTokenResponseExtension instance = new PackageTokenResponseExtension();
|
BulkTokenResponseExtension instance = new BulkTokenResponseExtension();
|
||||||
instance.token = "";
|
instance.token = "";
|
||||||
if (tokenKey.isPresent()) {
|
if (tokenKey.isPresent()) {
|
||||||
instance.token = tokenKey.get().getKey().toString();
|
instance.token = tokenKey.get().getKey().toString();
|
|
@ -13,12 +13,11 @@
|
||||||
// limitations under the License.
|
// limitations under the License.
|
||||||
|
|
||||||
@XmlSchema(
|
@XmlSchema(
|
||||||
namespace = "urn:google:params:xml:ns:packageToken-1.0",
|
namespace = "urn:google:params:xml:ns:bulkToken-1.0",
|
||||||
xmlns =
|
xmlns = @XmlNs(prefix = "bulkToken", namespaceURI = "urn:google:params:xml:ns:bulkToken-1.0"),
|
||||||
@XmlNs(prefix = "packageToken", namespaceURI = "urn:google:params:xml:ns:packageToken-1.0"),
|
|
||||||
elementFormDefault = XmlNsForm.QUALIFIED)
|
elementFormDefault = XmlNsForm.QUALIFIED)
|
||||||
@XmlAccessorType(XmlAccessType.FIELD)
|
@XmlAccessorType(XmlAccessType.FIELD)
|
||||||
package google.registry.model.domain.packagetoken;
|
package google.registry.model.domain.bulktoken;
|
||||||
|
|
||||||
import javax.xml.bind.annotation.XmlAccessType;
|
import javax.xml.bind.annotation.XmlAccessType;
|
||||||
import javax.xml.bind.annotation.XmlAccessorType;
|
import javax.xml.bind.annotation.XmlAccessorType;
|
|
@ -51,7 +51,7 @@ public class EppXmlTransformer {
|
||||||
"allocate.xsd",
|
"allocate.xsd",
|
||||||
"superuser.xsd",
|
"superuser.xsd",
|
||||||
"allocationToken-1.0.xsd",
|
"allocationToken-1.0.xsd",
|
||||||
"packageToken.xsd");
|
"bulkToken.xsd");
|
||||||
|
|
||||||
private static final XmlTransformer INPUT_TRANSFORMER =
|
private static final XmlTransformer INPUT_TRANSFORMER =
|
||||||
new XmlTransformer(SCHEMAS, EppInput.class);
|
new XmlTransformer(SCHEMAS, EppInput.class);
|
||||||
|
|
|
@ -23,6 +23,7 @@ import com.google.common.collect.ImmutableSet;
|
||||||
import google.registry.model.ImmutableObject;
|
import google.registry.model.ImmutableObject;
|
||||||
import google.registry.model.contact.ContactCommand;
|
import google.registry.model.contact.ContactCommand;
|
||||||
import google.registry.model.domain.DomainCommand;
|
import google.registry.model.domain.DomainCommand;
|
||||||
|
import google.registry.model.domain.bulktoken.BulkTokenExtension;
|
||||||
import google.registry.model.domain.fee06.FeeCheckCommandExtensionV06;
|
import google.registry.model.domain.fee06.FeeCheckCommandExtensionV06;
|
||||||
import google.registry.model.domain.fee06.FeeCreateCommandExtensionV06;
|
import google.registry.model.domain.fee06.FeeCreateCommandExtensionV06;
|
||||||
import google.registry.model.domain.fee06.FeeInfoCommandExtensionV06;
|
import google.registry.model.domain.fee06.FeeInfoCommandExtensionV06;
|
||||||
|
@ -45,7 +46,6 @@ import google.registry.model.domain.launch.LaunchDeleteExtension;
|
||||||
import google.registry.model.domain.launch.LaunchInfoExtension;
|
import google.registry.model.domain.launch.LaunchInfoExtension;
|
||||||
import google.registry.model.domain.launch.LaunchUpdateExtension;
|
import google.registry.model.domain.launch.LaunchUpdateExtension;
|
||||||
import google.registry.model.domain.metadata.MetadataExtension;
|
import google.registry.model.domain.metadata.MetadataExtension;
|
||||||
import google.registry.model.domain.packagetoken.PackageTokenExtension;
|
|
||||||
import google.registry.model.domain.rgp.RgpUpdateExtension;
|
import google.registry.model.domain.rgp.RgpUpdateExtension;
|
||||||
import google.registry.model.domain.secdns.SecDnsCreateExtension;
|
import google.registry.model.domain.secdns.SecDnsCreateExtension;
|
||||||
import google.registry.model.domain.secdns.SecDnsUpdateExtension;
|
import google.registry.model.domain.secdns.SecDnsUpdateExtension;
|
||||||
|
@ -362,8 +362,8 @@ public class EppInput extends ImmutableObject {
|
||||||
|
|
||||||
// Other extensions
|
// Other extensions
|
||||||
@XmlElementRef(type = AllocationTokenExtension.class),
|
@XmlElementRef(type = AllocationTokenExtension.class),
|
||||||
|
@XmlElementRef(type = BulkTokenExtension.class),
|
||||||
@XmlElementRef(type = MetadataExtension.class),
|
@XmlElementRef(type = MetadataExtension.class),
|
||||||
@XmlElementRef(type = PackageTokenExtension.class),
|
|
||||||
@XmlElementRef(type = RgpUpdateExtension.class),
|
@XmlElementRef(type = RgpUpdateExtension.class),
|
||||||
@XmlElementRef(type = SecDnsCreateExtension.class),
|
@XmlElementRef(type = SecDnsCreateExtension.class),
|
||||||
@XmlElementRef(type = SecDnsUpdateExtension.class)
|
@XmlElementRef(type = SecDnsUpdateExtension.class)
|
||||||
|
|
|
@ -23,6 +23,7 @@ import google.registry.model.ImmutableObject;
|
||||||
import google.registry.model.contact.ContactInfoData;
|
import google.registry.model.contact.ContactInfoData;
|
||||||
import google.registry.model.domain.DomainInfoData;
|
import google.registry.model.domain.DomainInfoData;
|
||||||
import google.registry.model.domain.DomainRenewData;
|
import google.registry.model.domain.DomainRenewData;
|
||||||
|
import google.registry.model.domain.bulktoken.BulkTokenResponseExtension;
|
||||||
import google.registry.model.domain.fee06.FeeCheckResponseExtensionV06;
|
import google.registry.model.domain.fee06.FeeCheckResponseExtensionV06;
|
||||||
import google.registry.model.domain.fee06.FeeCreateResponseExtensionV06;
|
import google.registry.model.domain.fee06.FeeCreateResponseExtensionV06;
|
||||||
import google.registry.model.domain.fee06.FeeDeleteResponseExtensionV06;
|
import google.registry.model.domain.fee06.FeeDeleteResponseExtensionV06;
|
||||||
|
@ -43,7 +44,6 @@ import google.registry.model.domain.fee12.FeeRenewResponseExtensionV12;
|
||||||
import google.registry.model.domain.fee12.FeeTransferResponseExtensionV12;
|
import google.registry.model.domain.fee12.FeeTransferResponseExtensionV12;
|
||||||
import google.registry.model.domain.fee12.FeeUpdateResponseExtensionV12;
|
import google.registry.model.domain.fee12.FeeUpdateResponseExtensionV12;
|
||||||
import google.registry.model.domain.launch.LaunchCheckResponseExtension;
|
import google.registry.model.domain.launch.LaunchCheckResponseExtension;
|
||||||
import google.registry.model.domain.packagetoken.PackageTokenResponseExtension;
|
|
||||||
import google.registry.model.domain.rgp.RgpInfoExtension;
|
import google.registry.model.domain.rgp.RgpInfoExtension;
|
||||||
import google.registry.model.domain.secdns.SecDnsInfoExtension;
|
import google.registry.model.domain.secdns.SecDnsInfoExtension;
|
||||||
import google.registry.model.eppcommon.Trid;
|
import google.registry.model.eppcommon.Trid;
|
||||||
|
@ -122,6 +122,7 @@ public class EppResponse extends ImmutableObject implements ResponseOrGreeting {
|
||||||
|
|
||||||
/** Zero or more response extensions. */
|
/** Zero or more response extensions. */
|
||||||
@XmlElementRefs({
|
@XmlElementRefs({
|
||||||
|
@XmlElementRef(type = BulkTokenResponseExtension.class),
|
||||||
@XmlElementRef(type = FeeCheckResponseExtensionV06.class),
|
@XmlElementRef(type = FeeCheckResponseExtensionV06.class),
|
||||||
@XmlElementRef(type = FeeInfoResponseExtensionV06.class),
|
@XmlElementRef(type = FeeInfoResponseExtensionV06.class),
|
||||||
@XmlElementRef(type = FeeCreateResponseExtensionV06.class),
|
@XmlElementRef(type = FeeCreateResponseExtensionV06.class),
|
||||||
|
@ -142,7 +143,6 @@ public class EppResponse extends ImmutableObject implements ResponseOrGreeting {
|
||||||
@XmlElementRef(type = FeeTransferResponseExtensionV12.class),
|
@XmlElementRef(type = FeeTransferResponseExtensionV12.class),
|
||||||
@XmlElementRef(type = FeeUpdateResponseExtensionV12.class),
|
@XmlElementRef(type = FeeUpdateResponseExtensionV12.class),
|
||||||
@XmlElementRef(type = LaunchCheckResponseExtension.class),
|
@XmlElementRef(type = LaunchCheckResponseExtension.class),
|
||||||
@XmlElementRef(type = PackageTokenResponseExtension.class),
|
|
||||||
@XmlElementRef(type = RgpInfoExtension.class),
|
@XmlElementRef(type = RgpInfoExtension.class),
|
||||||
@XmlElementRef(type = SecDnsInfoExtension.class)
|
@XmlElementRef(type = SecDnsInfoExtension.class)
|
||||||
})
|
})
|
||||||
|
|
38
core/src/main/java/google/registry/xml/xsd/bulkToken.xsd
Normal file
38
core/src/main/java/google/registry/xml/xsd/bulkToken.xsd
Normal file
|
@ -0,0 +1,38 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
|
||||||
|
<schema targetNamespace="urn:google:params:xml:ns:bulkToken-1.0"
|
||||||
|
xmlns:bulkToken="urn:google:params:xml:ns:bulkToken-1.0"
|
||||||
|
xmlns="http://www.w3.org/2001/XMLSchema"
|
||||||
|
elementFormDefault="qualified">
|
||||||
|
|
||||||
|
<annotation>
|
||||||
|
<documentation>
|
||||||
|
Extensible Provisioning Protocol v1.0
|
||||||
|
Bulk Token Extension.
|
||||||
|
</documentation>
|
||||||
|
</annotation>
|
||||||
|
|
||||||
|
<!-- Element used in info command request to get a bulk pricing token for a domain. -->
|
||||||
|
<element name="info"
|
||||||
|
type="bulkToken:infoType"/>
|
||||||
|
|
||||||
|
<complexType name="infoType"/>
|
||||||
|
|
||||||
|
<!-- Element returned in an info command response with a bulk token for a domain with bulk pricing. -->
|
||||||
|
<element name="bulkData"
|
||||||
|
type="bulkToken:bulkDataType"/>
|
||||||
|
|
||||||
|
<complexType name="bulkDataType">
|
||||||
|
<sequence>
|
||||||
|
<element name="token" type="bulkToken:tokenType" maxOccurs="unbounded"/>
|
||||||
|
</sequence>
|
||||||
|
</complexType>
|
||||||
|
|
||||||
|
<simpleType name="tokenType">
|
||||||
|
<restriction base="string">
|
||||||
|
</restriction>
|
||||||
|
</simpleType>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- End of schema.-->
|
||||||
|
</schema>
|
|
@ -1,38 +0,0 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
|
|
||||||
<schema targetNamespace="urn:google:params:xml:ns:packageToken-1.0"
|
|
||||||
xmlns:packageToken="urn:google:params:xml:ns:packageToken-1.0"
|
|
||||||
xmlns="http://www.w3.org/2001/XMLSchema"
|
|
||||||
elementFormDefault="qualified">
|
|
||||||
|
|
||||||
<annotation>
|
|
||||||
<documentation>
|
|
||||||
Extensible Provisioning Protocol v1.0
|
|
||||||
Package Token Extension.
|
|
||||||
</documentation>
|
|
||||||
</annotation>
|
|
||||||
|
|
||||||
<!-- Element used in info command request to get a package token for a domain. -->
|
|
||||||
<element name="info"
|
|
||||||
type="packageToken:infoType"/>
|
|
||||||
|
|
||||||
<complexType name="infoType"/>
|
|
||||||
|
|
||||||
<!-- Element returned in an info command response with a package token for a package domain. -->
|
|
||||||
<element name="packageData"
|
|
||||||
type="packageToken:packageDataType"/>
|
|
||||||
|
|
||||||
<complexType name="packageDataType">
|
|
||||||
<sequence>
|
|
||||||
<element name="token" type="packageToken:tokenType" maxOccurs="unbounded"/>
|
|
||||||
</sequence>
|
|
||||||
</complexType>
|
|
||||||
|
|
||||||
<simpleType name="tokenType">
|
|
||||||
<restriction base="string">
|
|
||||||
</restriction>
|
|
||||||
</simpleType>
|
|
||||||
|
|
||||||
|
|
||||||
<!-- End of schema.-->
|
|
||||||
</schema>
|
|
|
@ -1085,7 +1085,7 @@ class DomainInfoFlowTest extends ResourceFlowTestCase<DomainInfoFlow, Domain> {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void testPackageInfoExtension_returnsPackageInfo() throws Exception {
|
void testBulkInfoExtension_returnsBulkInfo() throws Exception {
|
||||||
persistTestEntities(false);
|
persistTestEntities(false);
|
||||||
AllocationToken token =
|
AllocationToken token =
|
||||||
persistResource(
|
persistResource(
|
||||||
|
@ -1100,12 +1100,12 @@ class DomainInfoFlowTest extends ResourceFlowTestCase<DomainInfoFlow, Domain> {
|
||||||
.build());
|
.build());
|
||||||
domain = domain.asBuilder().setCurrentPackageToken(token.createVKey()).build();
|
domain = domain.asBuilder().setCurrentPackageToken(token.createVKey()).build();
|
||||||
persistResource(domain);
|
persistResource(domain);
|
||||||
setEppInput("domain_info_package.xml");
|
setEppInput("domain_info_bulk.xml");
|
||||||
doSuccessfulTest("domain_info_response_package.xml", false);
|
doSuccessfulTest("domain_info_response_bulk.xml", false);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void testPackageInfoExtension_returnsPackageInfoForSuperUser() throws Exception {
|
void testBulkInfoExtension_returnsBulkInfoForSuperUser() throws Exception {
|
||||||
persistTestEntities(false);
|
persistTestEntities(false);
|
||||||
AllocationToken token =
|
AllocationToken token =
|
||||||
persistResource(
|
persistResource(
|
||||||
|
@ -1121,23 +1121,23 @@ class DomainInfoFlowTest extends ResourceFlowTestCase<DomainInfoFlow, Domain> {
|
||||||
domain = domain.asBuilder().setCurrentPackageToken(token.createVKey()).build();
|
domain = domain.asBuilder().setCurrentPackageToken(token.createVKey()).build();
|
||||||
persistResource(domain);
|
persistResource(domain);
|
||||||
sessionMetadata.setRegistrarId("TheRegistrar");
|
sessionMetadata.setRegistrarId("TheRegistrar");
|
||||||
setEppInput("domain_info_package.xml");
|
setEppInput("domain_info_bulk.xml");
|
||||||
EppOutput output = runFlowAsSuperuser();
|
EppOutput output = runFlowAsSuperuser();
|
||||||
String expectedOutput =
|
String expectedOutput =
|
||||||
loadFile(
|
loadFile(
|
||||||
"domain_info_response_superuser_package.xml",
|
"domain_info_response_superuser_bulk.xml",
|
||||||
updateSubstitutions(ImmutableMap.of(), "ROID", "2FF-TLD"));
|
updateSubstitutions(ImmutableMap.of(), "ROID", "2FF-TLD"));
|
||||||
assertXmlEquals(expectedOutput, new String(marshal(output, ValidationMode.LENIENT), UTF_8));
|
assertXmlEquals(expectedOutput, new String(marshal(output, ValidationMode.LENIENT), UTF_8));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void testPackageInfoExtension_nameNotInPackage() throws Exception {
|
void testBulkInfoExtension_nameNotInBulkPackage() throws Exception {
|
||||||
setEppInput("domain_info_package.xml");
|
setEppInput("domain_info_bulk.xml");
|
||||||
doSuccessfulTest("domain_info_response_empty_package.xml");
|
doSuccessfulTest("domain_info_response_empty_bulk_package.xml");
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void testPackageInfoExtension_notCurrentSponsorRegistrar() throws Exception {
|
void testBulkInfoExtension_notCurrentSponsorRegistrar() throws Exception {
|
||||||
persistTestEntities(false);
|
persistTestEntities(false);
|
||||||
AllocationToken token =
|
AllocationToken token =
|
||||||
persistResource(
|
persistResource(
|
||||||
|
@ -1153,7 +1153,7 @@ class DomainInfoFlowTest extends ResourceFlowTestCase<DomainInfoFlow, Domain> {
|
||||||
domain = domain.asBuilder().setCurrentPackageToken(token.createVKey()).build();
|
domain = domain.asBuilder().setCurrentPackageToken(token.createVKey()).build();
|
||||||
persistResource(domain);
|
persistResource(domain);
|
||||||
sessionMetadata.setRegistrarId("TheRegistrar");
|
sessionMetadata.setRegistrarId("TheRegistrar");
|
||||||
setEppInput("domain_info_package.xml");
|
setEppInput("domain_info_bulk.xml");
|
||||||
doSuccessfulTest("domain_info_response_unauthorized.xml", false);
|
doSuccessfulTest("domain_info_response_unauthorized.xml", false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
||||||
<epp xmlns:domain="urn:ietf:params:xml:ns:domain-1.0" xmlns:contact="urn:ietf:params:xml:ns:contact-1.0" xmlns:fee="urn:ietf:params:xml:ns:fee-0.6" xmlns:packageToken="urn:google:params:xml:ns:packageToken-1.0" xmlns="urn:ietf:params:xml:ns:epp-1.0" xmlns:rgp="urn:ietf:params:xml:ns:rgp-1.0" xmlns:fee11="urn:ietf:params:xml:ns:fee-0.11" xmlns:fee12="urn:ietf:params:xml:ns:fee-0.12" xmlns:launch="urn:ietf:params:xml:ns:launch-1.0" xmlns:secDNS="urn:ietf:params:xml:ns:secDNS-1.1" xmlns:host="urn:ietf:params:xml:ns:host-1.0">
|
<epp xmlns="urn:ietf:params:xml:ns:epp-1.0" xmlns:fee12="urn:ietf:params:xml:ns:fee-0.12">
|
||||||
<response>
|
<response>
|
||||||
<result code="1000">
|
<result code="1000">
|
||||||
<msg>Command completed successfully</msg>
|
<msg>Command completed successfully</msg>
|
||||||
|
|
|
@ -7,9 +7,9 @@
|
||||||
</domain:info>
|
</domain:info>
|
||||||
</info>
|
</info>
|
||||||
<extension>
|
<extension>
|
||||||
<packageToken:info
|
<bulkToken:info
|
||||||
xmlns:packageToken=
|
xmlns:bulkToken=
|
||||||
"urn:google:params:xml:ns:packageToken-1.0" />
|
"urn:google:params:xml:ns:bulkToken-1.0" />
|
||||||
</extension>
|
</extension>
|
||||||
<clTRID>ABC-12345</clTRID>
|
<clTRID>ABC-12345</clTRID>
|
||||||
</command>
|
</command>
|
|
@ -32,10 +32,10 @@
|
||||||
</domain:infData>
|
</domain:infData>
|
||||||
</resData>
|
</resData>
|
||||||
<extension>
|
<extension>
|
||||||
<packageToken:packageData xmlns:packageToken=
|
<bulkToken:bulkData xmlns:bulkToken=
|
||||||
"urn:google:params:xml:ns:packageToken-1.0">
|
"urn:google:params:xml:ns:bulkToken-1.0">
|
||||||
<packageToken:token></packageToken:token>
|
<bulkToken:token>abc123</bulkToken:token>
|
||||||
</packageToken:packageData>
|
</bulkToken:bulkData>
|
||||||
</extension>
|
</extension>
|
||||||
<trID>
|
<trID>
|
||||||
<clTRID>ABC-12345</clTRID>
|
<clTRID>ABC-12345</clTRID>
|
|
@ -32,10 +32,10 @@
|
||||||
</domain:infData>
|
</domain:infData>
|
||||||
</resData>
|
</resData>
|
||||||
<extension>
|
<extension>
|
||||||
<packageToken:packageData xmlns:packageToken=
|
<bulkToken:bulkData xmlns:bulkToken=
|
||||||
"urn:google:params:xml:ns:packageToken-1.0">
|
"urn:google:params:xml:ns:bulkToken-1.0">
|
||||||
<packageToken:token>abc123</packageToken:token>
|
<bulkToken:token></bulkToken:token>
|
||||||
</packageToken:packageData>
|
</bulkToken:bulkData>
|
||||||
</extension>
|
</extension>
|
||||||
<trID>
|
<trID>
|
||||||
<clTRID>ABC-12345</clTRID>
|
<clTRID>ABC-12345</clTRID>
|
|
@ -22,10 +22,10 @@
|
||||||
</domain:infData>
|
</domain:infData>
|
||||||
</resData>
|
</resData>
|
||||||
<extension>
|
<extension>
|
||||||
<packageToken:packageData xmlns:packageToken=
|
<bulkToken:bulkData xmlns:bulkToken=
|
||||||
"urn:google:params:xml:ns:packageToken-1.0">
|
"urn:google:params:xml:ns:bulkToken-1.0">
|
||||||
<packageToken:token>abc123</packageToken:token>
|
<bulkToken:token>abc123</bulkToken:token>
|
||||||
</packageToken:packageData>
|
</bulkToken:bulkData>
|
||||||
</extension>
|
</extension>
|
||||||
<trID>
|
<trID>
|
||||||
<clTRID>ABC-12345</clTRID>
|
<clTRID>ABC-12345</clTRID>
|
Loading…
Add table
Add a link
Reference in a new issue