@Override protected void handle(Matcher matcher, String value, ArquillianDescriptor descriptor) { String typeName = matcher.group(1); String propertyName = matcher.group(2); final DefaultProtocolDef defaultProtocolDef = descriptor.defaultProtocol(typeName); final String originalValue = defaultProtocolDef.getProperty(propertyName); if (value.contains(ORIGINAL_VALUE)) { defaultProtocolDef.property(propertyName, value.replace(ORIGINAL_VALUE, originalValue != null ? originalValue : "")); } else { defaultProtocolDef.property(propertyName, value); } } }
@Override protected void handle(Matcher matcher, String value, ArquillianDescriptor descriptor) { String typeName = matcher.group(1); String propertyName = matcher.group(2); final DefaultProtocolDef defaultProtocolDef = descriptor.defaultProtocol(typeName); final String originalValue = defaultProtocolDef.getProperty(propertyName); if (value.contains(ORIGINAL_VALUE)) { defaultProtocolDef.property(propertyName, value.replace(ORIGINAL_VALUE, originalValue != null ? originalValue : "")); } else { defaultProtocolDef.property(propertyName, value); } } }
private ArquillianDescriptor createDescriptor(String defaultProtocol) { ArquillianDescriptor desc = Descriptors.create(ArquillianDescriptor.class); if (defaultProtocol != null) { desc.defaultProtocol(defaultProtocol); } return desc; } }
private ArquillianDescriptor createDescriptor(String defaultProtocol) { ArquillianDescriptor desc = Descriptors.create(ArquillianDescriptor.class); if (defaultProtocol != null) { desc.defaultProtocol(defaultProtocol); } return desc; } }
@Test public void shouldBeAbleToAddDefaultProtocolAndOverwriteProperty() throws Exception { System.setProperty(KEY_PROPERTY_VALUE_1, PROPERTY_VALUE_1); System.setProperty(KEY_PROPERTY_VALUE_2, PROPERTY_VALUE_2); desc = create() .defaultProtocol(PROTOCOL_TYPE_1) .property(PROPERTY_NAME_1, setPropKey(KEY_PROPERTY_VALUE_1)) .property(PROPERTY_NAME_1, setPropKey(KEY_PROPERTY_VALUE_2)); desc = new SystemPropertiesConfigurationPlaceholderResolver().resolve(desc); final String descString = desc.exportAsString(); assertXPath(descString, "/arquillian/defaultProtocol/@type", PROTOCOL_TYPE_1); assertXPath(descString, "/arquillian/defaultProtocol/property/@name", PROPERTY_NAME_1); assertXPath(descString, "/arquillian/defaultProtocol/property/text()", PROPERTY_VALUE_2); ArquillianDescriptor descriptor = create(descString); Assert.assertNotNull(descriptor.getDefaultProtocol()); Assert.assertEquals(PROTOCOL_TYPE_1, descriptor.getDefaultProtocol().getType()); Assert.assertEquals(1, descriptor.getDefaultProtocol().getProperties().size()); Assert.assertEquals(PROPERTY_VALUE_2, descriptor.getDefaultProtocol().getProperties().get(PROPERTY_NAME_1)); }
@Test public void shouldBeAbleToAddDefaultProtocol() throws Exception { System.setProperty(KEY_PROPERTY_VALUE_1, PROPERTY_VALUE_1); desc = create() .defaultProtocol(PROTOCOL_TYPE_1) .property(PROPERTY_NAME_1, setPropKey(KEY_PROPERTY_VALUE_1)); desc = new SystemPropertiesConfigurationPlaceholderResolver().resolve(desc); final String descString = desc.exportAsString(); assertXPath(descString, "/arquillian/defaultProtocol/@type", PROTOCOL_TYPE_1); assertXPath(descString, "/arquillian/defaultProtocol/property/@name", PROPERTY_NAME_1); assertXPath(descString, "/arquillian/defaultProtocol/property/text()", PROPERTY_VALUE_1); ArquillianDescriptor descriptor = create(descString); Assert.assertNotNull(descriptor.getDefaultProtocol()); Assert.assertEquals(PROTOCOL_TYPE_1, descriptor.getDefaultProtocol().getType()); Assert.assertEquals(PROPERTY_VALUE_1, descriptor.getDefaultProtocol().getProperties().get(PROPERTY_NAME_1)); }
@Test public void shouldBeAbleToAddDefaultProtocol() throws Exception { desc = create() .defaultProtocol(PROTOCOL_TYPE_1) .property(PROPERTY_NAME_1, PROPERTY_VALUE_1) .exportAsString(); assertXPath(desc, "/arquillian/defaultProtocol/@type", PROTOCOL_TYPE_1); assertXPath(desc, "/arquillian/defaultProtocol/property/@name", PROPERTY_NAME_1); assertXPath(desc, "/arquillian/defaultProtocol/property/text()", PROPERTY_VALUE_1); ArquillianDescriptor descriptor = create(desc); Assert.assertNotNull(descriptor.getDefaultProtocol()); Assert.assertEquals(PROTOCOL_TYPE_1, descriptor.getDefaultProtocol().getType()); Assert.assertEquals(PROPERTY_VALUE_1, descriptor.getDefaultProtocol().getProperties().get(PROPERTY_NAME_1)); Assert.assertEquals(PROPERTY_VALUE_1, descriptor.getDefaultProtocol().getProperty(PROPERTY_NAME_1)); }
@Test public void shouldBeAbleToAddDefaultProtocolAndOverwriteProperty() throws Exception { desc = create() .defaultProtocol(PROTOCOL_TYPE_1) .property(PROPERTY_NAME_1, PROPERTY_VALUE_1) .property(PROPERTY_NAME_1, PROPERTY_VALUE_2) .exportAsString(); assertXPath(desc, "/arquillian/defaultProtocol/@type", PROTOCOL_TYPE_1); assertXPath(desc, "/arquillian/defaultProtocol/property/@name", PROPERTY_NAME_1); assertXPath(desc, "/arquillian/defaultProtocol/property/text()", PROPERTY_VALUE_2); ArquillianDescriptor descriptor = create(desc); Assert.assertNotNull(descriptor.getDefaultProtocol()); Assert.assertEquals(PROTOCOL_TYPE_1, descriptor.getDefaultProtocol().getType()); Assert.assertEquals(1, descriptor.getDefaultProtocol().getProperties().size()); Assert.assertEquals(PROPERTY_VALUE_2, descriptor.getDefaultProtocol().getProperties().get(PROPERTY_NAME_1)); Assert.assertEquals(PROPERTY_VALUE_2, descriptor.getDefaultProtocol().getProperty(PROPERTY_NAME_1)); }
@Test public void shouldBeAbleToAddEverything() throws Exception { desc = create() .defaultProtocol(PROTOCOL_TYPE_1) .property(PROPERTY_VALUE_3, PROPERTY_VALUE_3) .container(CONTAINER_NAME_1) .property(PROPERTY_NAME_1, PROPERTY_VALUE_1) .dependency(DEPENDENCY_1) .protocol(PROTOCOL_TYPE_1) .property(PROPERTY_NAME_2, PROPERTY_VALUE_2) .group(GROUP_NAME_1) .container(CONTAINER_NAME_2) .property(PROPERTY_NAME_1, PROPERTY_VALUE_1) .dependency(DEPENDENCY_2) .protocol(PROTOCOL_TYPE_2) .property(PROPERTY_NAME_3, PROPERTY_VALUE_3) .group(GROUP_NAME_2) .container(CONTAINER_NAME_3) .protocol(PROTOCOL_TYPE_3) .property(PROPERTY_NAME_1, PROPERTY_VALUE_1) .container(CONTAINER_NAME_4) .extension(EXTENSION_NAME_1) .property(PROPERTY_NAME_1, PROPERTY_VALUE_2) .exportAsString(); }