private static String formatArtifact(String pattern, ModelTestControllerVersion version) { return String.format(pattern, version.getMavenGavVersion()); }
private static FailedOperationTransformationConfig createFailedOperationTransformationConfig(ModelVersion version) { FailedOperationTransformationConfig config = new FailedOperationTransformationConfig(); PathAddress subsystemAddress = PathAddress.pathAddress(JGroupsSubsystemResourceDefinition.PATH); if (JGroupsModel.VERSION_3_0_0.requiresTransformation(version)) { // Channel resource in a typical configuration would be not rejected, but since we don't have infinispan subsystem setup (because // that would create a cyclical dependency) it has to be rejected in this subsystem test config.addFailedAttribute(subsystemAddress.append(ChannelResourceDefinition.WILDCARD_PATH), FailedOperationTransformationConfig.REJECTED_RESOURCE); config.addFailedAttribute(subsystemAddress.append(StackResourceDefinition.WILDCARD_PATH).append(TransportResourceDefinition.WILDCARD_PATH).append(ThreadPoolResourceDefinition.WILDCARD_PATH), FailedOperationTransformationConfig.REJECTED_RESOURCE); } if (JGroupsModel.VERSION_2_0_0.requiresTransformation(version)) { PathAddress stackAddress = subsystemAddress.append(StackResourceDefinition.WILDCARD_PATH); PathAddress relayAddress = stackAddress.append(RelayResourceDefinition.PATH); config.addFailedAttribute(relayAddress, FailedOperationTransformationConfig.REJECTED_RESOURCE); config.addFailedAttribute(relayAddress.append(RemoteSiteResourceDefinition.WILDCARD_PATH), FailedOperationTransformationConfig.REJECTED_RESOURCE); } return config; }
public static void checkMapResults(KernelServices services, ModelNode expected, ModelVersion version, ModelNode operation) throws Exception { ModelNode main = ModelTestUtils.checkOutcome(services.executeOperation(operation.clone())).get(ModelDescriptionConstants.RESULT); ModelNode legacyResult = services.executeOperation(version, services.transformOperation(version, operation.clone())); ModelNode legacy; if (expected.isDefined()) { legacy = ModelTestUtils.checkOutcome(legacyResult).get(ModelDescriptionConstants.RESULT); } else { ModelTestUtils.checkFailed(legacyResult); legacy = new ModelNode(); } Assert.assertEquals(main, legacy); Assert.assertEquals(expected, legacy); }
public LegacyKernelServiceInitializerImpl(AdditionalInitialization additionalInit, ModelTestControllerVersion version, ModelVersion modelVersion) { this.classLoaderBuilder = new ChildFirstClassLoaderBuilder(version.isEap()); this.additionalInit = additionalInit == null ? AdditionalInitialization.MANAGEMENT : additionalInit; this.testControllerVersion = version; this.modelVersion = modelVersion; }
public ModelTestBootOperationsBuilder setXmlResource(String resource) throws IOException, XMLStreamException { validateNotAlreadyBuilt(); validateSubsystemConfig(); this.subsystemXmlResource = resource; internalSetSubsystemXml(ModelTestUtils.readResource(testClass, resource)); return this; }
/** * Executes a given operation asserting that an attachment has been created. Given {@link KernelServices} must have enabled attachment grabber. * * @return {@link ModelNode} result of the transformed operation */ public static ModelNode executeOpInBothControllersWithAttachments(KernelServices services, ModelVersion version, ModelNode operation) throws Exception { OperationTransformer.TransformedOperation op = services.executeInMainAndGetTheTransformedOperation(operation, version); Assert.assertFalse(op.rejectOperation(success())); // System.out.println(operation + "\nbecomes\n" + op.getTransformedOperation()); if (op.getTransformedOperation() != null) { return ModelTestUtils.checkOutcome(services.getLegacyServices(version).executeOperation(op.getTransformedOperation())); } return null; }
private void addOperationValidationConfig(String name, PathAddress pathAddress, Action action) { if (operationValidationExcludeFilterBuilder == null) { operationValidationExcludeFilterBuilder = ModelTestOperationValidatorFilter.createBuilder(); } operationValidationExcludeFilterBuilder.addOperation(pathAddress, name, action, null); }
private ModelTestOperationValidatorFilter getOperationValidationFilter() { if (operationValidationExcludeFilterBuilder != null) { return operationValidationExcludeFilterBuilder.build(); } return ModelTestOperationValidatorFilter.createValidateAll(); } }
public ModelTestBootOperationsBuilder setXml(String subsystemXml) throws XMLStreamException { validateNotAlreadyBuilt(); validateSubsystemConfig(); this.subsystemXml = subsystemXml; bootOperations = xmlParser.parse(subsystemXml); return this; }
public static void checkMapModels(KernelServices services, ModelVersion version, PathAddress address, String... properties) throws Exception { final ModelNode readResource = Util.createEmptyOperation(READ_RESOURCE_OPERATION, address); readResource.get(RECURSIVE).set(true); readResource.get(INCLUDE_DEFAULTS).set(false); ModelNode mainModel = services.executeForResult(readResource.clone()); checkMainMapModel(mainModel, properties); final ModelNode legacyModel; if (address.getLastElement().getKey().equals("transport")) { //TODO get rid of this once the PathAddress transformer works properly //Temporary workaround readResource.get(OP_ADDR).set(address.subAddress(0, address.size() - 1).append("transport", "TRANSPORT").toModelNode()); legacyModel = services.getLegacyServices(version).executeForResult(readResource); } else { legacyModel = ModelTestUtils.checkResultAndGetContents(services.executeOperation(version, services.transformOperation(version, readResource.clone()))); } checkLegacyChildResourceModel(legacyModel, properties); }
ModelNode correctWriteAttributeOperation(ModelNode operation) { PathAddressConfig cfg = registry.getConfig(operation); if (cfg == null) { return operation; } return cfg.correctWriteAttributeOperation(operation); }
boolean expectDiscarded(ModelNode operation) { PathAddressConfig cfg = registry.getConfig(operation); if (cfg == null) { return false; } if (cfg.expectDiscarded(operation)) { return true; } return false; }
boolean canCorrectMore(ModelNode operation) { PathAddressConfig cfg = registry.getConfig(operation); if (cfg == null) { return false; } if (cfg.canCorrectMore(operation)) { return true; } return false; }
private void testRejections(final ModelTestControllerVersion controller) throws Exception { final ModelVersion version = getModelVersion(controller).getVersion(); final String[] dependencies = getDependencies(controller); // create builder for current subsystem version KernelServicesBuilder builder = createKernelServicesBuilder(createAdditionalInitialization()); // initialize the legacy services and add required jars builder.createLegacyKernelServicesBuilder(createAdditionalInitialization(), controller, version) .addSingleChildFirstClass(AdditionalInitialization.class) .addMavenResourceURL(dependencies) .dontPersistXml(); KernelServices services = builder.build(); Assert.assertTrue(services.isSuccessfulBoot()); KernelServices legacyServices = services.getLegacyServices(version); Assert.assertNotNull(legacyServices); Assert.assertTrue(legacyServices.isSuccessfulBoot()); List<ModelNode> operations = builder.parseXmlResource("subsystem-jgroups-transform-reject.xml"); ModelTestUtils.checkFailedTransformedBootOperations(services, version, operations, createFailedOperationTransformationConfig(version)); }
LegacyKernelServicesInitializerImpl(ModelVersion modelVersion, ModelTestControllerVersion version) { this.classLoaderBuilder = new ChildFirstClassLoaderBuilder(version.isEap()); this.modelVersion = modelVersion; this.testControllerVersion = version; }
ModelTestUtils.checkOutcome(services.executeOperation(add)); ModelTestUtils.checkOutcome(services.executeOperation(remove)); add = Operations.createAddOperation(stackAddress.append(ProtocolResourceDefinition.pathElement("FD")), 3); //The original index of the FD protocol ModelTestUtils.checkOutcome(services.executeOperation(add));
private void addOperationValidationConfig(String name, PathAddress pathAddress, Action action) { if (operationValidationExcludeFilterBuilder == null) { operationValidationExcludeFilterBuilder = ModelTestOperationValidatorFilter.createBuilder(); } operationValidationExcludeFilterBuilder.addOperation(pathAddress, name, action, null); }
public LegacyKernelServiceInitializerImpl(AdditionalInitialization additionalInit, ModelTestControllerVersion version, ModelVersion modelVersion) { this.classLoaderBuilder = new ChildFirstClassLoaderBuilder(version.isEap()); this.additionalInit = additionalInit == null ? AdditionalInitialization.MANAGEMENT : additionalInit; this.testControllerVersion = version; this.modelVersion = modelVersion; }
LegacyKernelServicesInitializerImpl(ModelVersion modelVersion, ModelTestControllerVersion version) { this.classLoaderBuilder = new ChildFirstClassLoaderBuilder(version.isEap()); this.modelVersion = modelVersion; this.testControllerVersion = version; }
public LegacyKernelServiceInitializerImpl(AdditionalInitialization additionalInit, ModelTestControllerVersion version, ModelVersion modelVersion) { this.classLoaderBuilder = new ChildFirstClassLoaderBuilder(version.isEap()); this.additionalInit = additionalInit == null ? AdditionalInitialization.MANAGEMENT : additionalInit; this.testControllerVersion = version; this.modelVersion = modelVersion; }