You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by ah...@apache.org on 2021/04/14 09:29:43 UTC

[isis] branch master updated: ISIS-2493: housekeeping: remove support for 'modify' prefix

This is an automated email from the ASF dual-hosted git repository.

ahuber pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git


The following commit(s) were added to refs/heads/master by this push:
     new 1bc0d5d  ISIS-2493: housekeeping: remove support for 'modify' prefix
1bc0d5d is described below

commit 1bc0d5d36db51c9ce3f85805301ec96982575e22
Author: Andi Huber <ah...@apache.org>
AuthorDate: Wed Apr 14 11:29:29 2021 +0200

    ISIS-2493: housekeeping: remove support for 'modify' prefix
    
    also cleaning up tests
---
 .../update/PropertyModifyFacetFactory.java         |  68 ---------
 ...actory.java => PropertySetterFacetFactory.java} |   4 +-
 .../modify/PropertySetterFacetViaModifyMethod.java |  97 -------------
 .../metamodel/methods/MethodLiteralConstants.java  |   5 -
 .../dflt/ProgrammingModelFacetsJava8.java          |   7 +-
 .../facets/param/name/ParameterNameFacetTest.java  |   2 +-
 .../PropertyMethodsFacetFactoryTest.java           | 152 +--------------------
 7 files changed, 10 insertions(+), 325 deletions(-)

diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/update/PropertyModifyFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/update/PropertyModifyFacetFactory.java
deleted file mode 100644
index 7f6ccd6..0000000
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/update/PropertyModifyFacetFactory.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *        http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- */
-
-package org.apache.isis.core.metamodel.facets.properties.update;
-
-import java.lang.reflect.Method;
-
-import org.apache.isis.commons.collections.Can;
-import org.apache.isis.core.metamodel.commons.StringExtensions;
-import org.apache.isis.core.metamodel.facetapi.FacetHolder;
-import org.apache.isis.core.metamodel.facetapi.FacetUtil;
-import org.apache.isis.core.metamodel.facetapi.FeatureType;
-import org.apache.isis.core.metamodel.facets.properties.update.modify.PropertySetterFacetViaModifyMethod;
-import org.apache.isis.core.metamodel.methods.MethodFinderUtils;
-import org.apache.isis.core.metamodel.methods.MethodLiteralConstants;
-import org.apache.isis.core.metamodel.methods.MethodPrefixBasedFacetFactoryAbstract;
-
-public class PropertyModifyFacetFactory extends MethodPrefixBasedFacetFactoryAbstract {
-
-    private static final Can<String> PREFIXES = Can.ofSingleton(MethodLiteralConstants.MODIFY_PREFIX);
-
-    public PropertyModifyFacetFactory() {
-        super(FeatureType.PROPERTIES_ONLY, OrphanValidation.VALIDATE, PREFIXES);
-    }
-
-    @Override
-    public void process(final ProcessMethodContext processMethodContext) {
-
-        attachPropertyModifyFacetIfModifyMethodIsFound(processMethodContext);
-    }
-
-    private void attachPropertyModifyFacetIfModifyMethodIsFound(final ProcessMethodContext processMethodContext) {
-
-        final Method getMethod = processMethodContext.getMethod();
-        final String capitalizedName = StringExtensions.asJavaBaseName(getMethod.getName());
-
-        final Class<?> returnType = getMethod.getReturnType();
-        final Class<?>[] paramTypes = new Class[] { returnType };
-
-        final Class<?> cls = processMethodContext.getCls();
-        final Method modifyMethod = MethodFinderUtils.findMethod(cls, MethodLiteralConstants.MODIFY_PREFIX + capitalizedName, void.class, paramTypes);
-
-        if (modifyMethod == null) {
-            return;
-        }
-        processMethodContext.removeMethod(modifyMethod);
-
-        final FacetHolder property = processMethodContext.getFacetHolder();
-        FacetUtil.addFacet(new PropertySetterFacetViaModifyMethod(modifyMethod, property));
-    }
-
-}
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/update/PropertySetAndClearFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/update/PropertySetterFacetFactory.java
similarity index 96%
rename from core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/update/PropertySetAndClearFacetFactory.java
rename to core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/update/PropertySetterFacetFactory.java
index c0acc79..c7f0898 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/update/PropertySetAndClearFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/update/PropertySetterFacetFactory.java
@@ -34,11 +34,11 @@ import org.apache.isis.core.metamodel.methods.MethodFinderUtils;
 import org.apache.isis.core.metamodel.methods.MethodLiteralConstants;
 import org.apache.isis.core.metamodel.methods.MethodPrefixBasedFacetFactoryAbstract;
 
-public class PropertySetAndClearFacetFactory extends MethodPrefixBasedFacetFactoryAbstract {
+public class PropertySetterFacetFactory extends MethodPrefixBasedFacetFactoryAbstract {
 
     private static final Can<String> PREFIXES = Can.empty();
 
-    public PropertySetAndClearFacetFactory() {
+    public PropertySetterFacetFactory() {
         super(FeatureType.PROPERTIES_ONLY, OrphanValidation.VALIDATE, PREFIXES);
     }
 
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/update/modify/PropertySetterFacetViaModifyMethod.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/update/modify/PropertySetterFacetViaModifyMethod.java
deleted file mode 100644
index 0869e87..0000000
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/update/modify/PropertySetterFacetViaModifyMethod.java
+++ /dev/null
@@ -1,97 +0,0 @@
-/*
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *        http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- */
-
-package org.apache.isis.core.metamodel.facets.properties.update.modify;
-
-import java.lang.reflect.Method;
-import java.util.Collections;
-import java.util.List;
-import java.util.Map;
-
-import org.apache.isis.core.metamodel.consent.InteractionInitiatedBy;
-import org.apache.isis.core.metamodel.facetapi.FacetHolder;
-import org.apache.isis.core.metamodel.facets.ImperativeFacet;
-import org.apache.isis.core.metamodel.facets.object.viewmodel.ViewModelFacet;
-import org.apache.isis.core.metamodel.spec.ManagedObject;
-import org.apache.isis.core.metamodel.spec.ManagedObjects;
-import org.apache.isis.core.metamodel.spec.feature.OneToOneAssociation;
-
-public class PropertySetterFacetViaModifyMethod extends PropertySetterFacetAbstract implements ImperativeFacet {
-
-    private final Method method;
-
-    public PropertySetterFacetViaModifyMethod(
-            final Method method,
-            final FacetHolder holder) {
-        super(holder);
-        this.method = method;
-    }
-
-    /**
-     * Returns a singleton list of the {@link Method} provided in the
-     * constructor.
-     */
-    @Override
-    public List<Method> getMethods() {
-        return Collections.singletonList(method);
-    }
-
-    @Override
-    public Intent getIntent(final Method method) {
-        return Intent.MODIFY_PROPERTY_SUPPORTING;
-    }
-
-    @Override
-    public ManagedObject setProperty(
-            final OneToOneAssociation owningAssociation,
-            final ManagedObject targetAdapter,
-            final ManagedObject valueAdapter,
-            final InteractionInitiatedBy interactionInitiatedBy) {
-
-        ManagedObjects.InvokeUtil.invoke(method, targetAdapter, valueAdapter);
-        return cloneIfViewModelCloneable(targetAdapter);
-    }
-
-    private ManagedObject cloneIfViewModelCloneable(final ManagedObject adapter) {
-
-        if (!adapter.getSpecification().isViewModelCloneable(adapter)) {
-            return adapter;
-        }
-
-        final ViewModelFacet viewModelFacet = adapter.getSpecification().getFacet(ViewModelFacet.class);
-        final Object clone = viewModelFacet.clone(adapter.getPojo());
-
-        final ManagedObject clonedAdapter = getObjectManager().adapt(clone);
-        return clonedAdapter;
-    }
-
-
-    @Override
-    protected String toStringValues() {
-        return "method=" + method;
-    }
-
-
-    @Override public void appendAttributesTo(final Map<String, Object> attributeMap) {
-        super.appendAttributesTo(attributeMap);
-        ImperativeFacet.Util.appendAttributesTo(this, attributeMap);
-    }
-
-
-}
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/methods/MethodLiteralConstants.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/methods/MethodLiteralConstants.java
index 4380ea9..6bbb958 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/methods/MethodLiteralConstants.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/methods/MethodLiteralConstants.java
@@ -136,10 +136,5 @@ public final class MethodLiteralConstants {
         return capitalizedName;
     }
     
-    // -- DEPRECATIONS
-    
-    //@Deprecated public static final String CLEAR_PREFIX = "clear";
-    @Deprecated public static final String MODIFY_PREFIX = "modify";
-    
 
 }
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/progmodels/dflt/ProgrammingModelFacetsJava8.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/progmodels/dflt/ProgrammingModelFacetsJava8.java
index c78a4af..66d9d50 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/progmodels/dflt/ProgrammingModelFacetsJava8.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/progmodels/dflt/ProgrammingModelFacetsJava8.java
@@ -95,8 +95,7 @@ import org.apache.isis.core.metamodel.facets.properties.disabled.inferred.Disabl
 import org.apache.isis.core.metamodel.facets.properties.mandatory.dflt.MandatoryFacetOnProperyDefaultFactory;
 import org.apache.isis.core.metamodel.facets.properties.property.PropertyAnnotationFacetFactory;
 import org.apache.isis.core.metamodel.facets.properties.propertylayout.PropertyLayoutFacetFactory;
-import org.apache.isis.core.metamodel.facets.properties.update.PropertyModifyFacetFactory;
-import org.apache.isis.core.metamodel.facets.properties.update.PropertySetAndClearFacetFactory;
+import org.apache.isis.core.metamodel.facets.properties.update.PropertySetterFacetFactory;
 import org.apache.isis.core.metamodel.facets.properties.validating.dflt.PropertyValidateFacetDefaultFactory;
 import org.apache.isis.core.metamodel.facets.properties.validating.method.PropertyValidateFacetViaMethodFactory;
 import org.apache.isis.core.metamodel.facets.value.bigdecimal.BigDecimalValueFacetUsingSemanticsProviderFactory;
@@ -173,9 +172,7 @@ public final class ProgrammingModelFacetsJava8 extends ProgrammingModelAbstract
 
         // properties
         addFactory(FacetProcessingOrder.E1_MEMBER_MODELLING, PropertyAccessorFacetViaAccessorFactory.class);
-        addFactory(FacetProcessingOrder.E1_MEMBER_MODELLING, PropertySetAndClearFacetFactory.class);
-        // must come after PropertySetAndClearFacetFactory (replaces setter facet with modify if need be)
-        addFactory(FacetProcessingOrder.E1_MEMBER_MODELLING, PropertyModifyFacetFactory.class);
+        addFactory(FacetProcessingOrder.E1_MEMBER_MODELLING, PropertySetterFacetFactory.class);
 
         addFactory(FacetProcessingOrder.E1_MEMBER_MODELLING, PropertyValidateFacetViaMethodFactory.class);
         addFactory(FacetProcessingOrder.E1_MEMBER_MODELLING, PropertyChoicesFacetViaMethodFactory.class);
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/param/name/ParameterNameFacetTest.java b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/param/name/ParameterNameFacetTest.java
index 31fc339..db40968 100644
--- a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/param/name/ParameterNameFacetTest.java
+++ b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/param/name/ParameterNameFacetTest.java
@@ -64,7 +64,7 @@ public class ParameterNameFacetTest extends AbstractFacetFactoryJUnit4TestCase {
         super.setUpFacetedMethodAndParameter();
 
         // verify that
-        assertEquals(120, programmingModel.streamFactories().count());
+        assertEquals(119, programmingModel.streamFactories().count());
     }
 
     @Override
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/properties/PropertyMethodsFacetFactoryTest.java b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/properties/PropertyMethodsFacetFactoryTest.java
index 161abeb..4b336b2 100644
--- a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/properties/PropertyMethodsFacetFactoryTest.java
+++ b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/properties/PropertyMethodsFacetFactoryTest.java
@@ -27,7 +27,6 @@ import org.apache.isis.core.metamodel.facetapi.Facet;
 import org.apache.isis.core.metamodel.facetapi.FeatureType;
 import org.apache.isis.core.metamodel.facets.AbstractFacetFactoryTest;
 import org.apache.isis.core.metamodel.facets.FacetFactory;
-import org.apache.isis.core.metamodel.facets.members.disabled.DisabledFacet;
 import org.apache.isis.core.metamodel.facets.members.disabled.method.DisableForContextFacet;
 import org.apache.isis.core.metamodel.facets.members.disabled.method.DisableForContextFacetViaMethod;
 import org.apache.isis.core.metamodel.facets.members.disabled.method.DisableForContextFacetViaMethodFactory;
@@ -47,17 +46,12 @@ import org.apache.isis.core.metamodel.facets.properties.choices.method.PropertyC
 import org.apache.isis.core.metamodel.facets.properties.defaults.PropertyDefaultFacet;
 import org.apache.isis.core.metamodel.facets.properties.defaults.method.PropertyDefaultFacetViaMethod;
 import org.apache.isis.core.metamodel.facets.properties.defaults.method.PropertyDefaultFacetViaMethodFactory;
-import org.apache.isis.core.metamodel.facets.properties.disabled.inferred.DisabledFacetOnPropertyInferredFactory;
-import org.apache.isis.core.metamodel.facets.properties.update.SnapshotExcludeFacetInferred;
-import org.apache.isis.core.metamodel.facets.properties.update.PropertyModifyFacetFactory;
-import org.apache.isis.core.metamodel.facets.properties.update.PropertySetAndClearFacetFactory;
+import org.apache.isis.core.metamodel.facets.properties.update.PropertySetterFacetFactory;
 import org.apache.isis.core.metamodel.facets.properties.update.clear.PropertyClearFacet;
-import org.apache.isis.core.metamodel.facets.properties.update.clear.PropertyClearFacetViaClearMethod;
 import org.apache.isis.core.metamodel.facets.properties.update.clear.PropertyClearFacetViaSetterMethod;
 import org.apache.isis.core.metamodel.facets.properties.update.init.PropertyInitializationFacet;
 import org.apache.isis.core.metamodel.facets.properties.update.init.PropertyInitializationFacetViaSetterMethod;
 import org.apache.isis.core.metamodel.facets.properties.update.modify.PropertySetterFacet;
-import org.apache.isis.core.metamodel.facets.properties.update.modify.PropertySetterFacetViaModifyMethod;
 import org.apache.isis.core.metamodel.facets.properties.update.modify.PropertySetterFacetViaSetterMethod;
 import org.apache.isis.core.metamodel.facets.properties.validating.PropertyValidateFacet;
 import org.apache.isis.core.metamodel.facets.properties.validating.method.PropertyValidateFacetViaMethod;
@@ -102,7 +96,7 @@ public class PropertyMethodsFacetFactoryTest extends AbstractFacetFactoryTest {
     }
 
     public void testSetterFacetIsInstalledForSetterMethodAndMethodRemoved() {
-        val facetFactory = new PropertySetAndClearFacetFactory();
+        val facetFactory = new PropertySetterFacetFactory();
         facetFactory.setMetaModelContext(super.metaModelContext);
 
         class Customer {
@@ -130,7 +124,7 @@ public class PropertyMethodsFacetFactoryTest extends AbstractFacetFactoryTest {
     }
 
     public void testInitializationFacetIsInstalledForSetterMethodAndMethodRemoved() {
-        val facetFactory = new PropertySetAndClearFacetFactory();
+        val facetFactory = new PropertySetterFacetFactory();
         facetFactory.setMetaModelContext(super.metaModelContext);
 
         class Customer {
@@ -158,7 +152,7 @@ public class PropertyMethodsFacetFactoryTest extends AbstractFacetFactoryTest {
     }
 
     public void testSetterFacetIsInstalledMeansNoDisabledOrDerivedFacetsInstalled() {
-        val facetFactory = new PropertySetAndClearFacetFactory();
+        val facetFactory = new PropertySetterFacetFactory();
         facetFactory.setMetaModelContext(super.metaModelContext);
 
         class Customer {
@@ -179,144 +173,8 @@ public class PropertyMethodsFacetFactoryTest extends AbstractFacetFactoryTest {
         assertNull(facetedMethod.getFacet(SnapshotExcludeFacet.class));
     }
 
-    public void testSetterFacetIsInstalledForModifyMethodAndMethodRemoved() {
-
-        val facetFactoryForModify = new PropertyModifyFacetFactory();
-        val facetFactoryForSetter = new PropertySetAndClearFacetFactory();
-        facetFactoryForModify.setMetaModelContext(super.metaModelContext);
-        facetFactoryForSetter.setMetaModelContext(super.metaModelContext);
-
-        class Customer {
-            @SuppressWarnings("unused")
-            public String getFirstName() {
-                return null;
-            }
-
-            @SuppressWarnings("unused")
-            public void modifyFirstName(final String firstName) {
-            }
-        }
-        final Method propertyAccessorMethod = findMethod(Customer.class, "getFirstName");
-        final Method propertyModifyMethod = findMethod(Customer.class, "modifyFirstName", new Class[] { String.class });
-
-        final FacetFactory.ProcessMethodContext processMethodContext = new FacetFactory.ProcessMethodContext(Customer.class, null,
-                propertyAccessorMethod, methodRemover, facetedMethod);
-        facetFactoryForModify.process(processMethodContext);
-        facetFactoryForSetter.process(processMethodContext);
-
-        final Facet facet = facetedMethod.getFacet(PropertySetterFacet.class);
-        assertNotNull(facet);
-        assertTrue(facet instanceof PropertySetterFacetViaModifyMethod);
-        final PropertySetterFacetViaModifyMethod propertySetterFacet = (PropertySetterFacetViaModifyMethod) facet;
-        assertEquals(propertyModifyMethod, propertySetterFacet.getMethods().get(0));
-
-        assertTrue(methodRemover.getRemovedMethodMethodCalls().contains(propertyModifyMethod));
-    }
-
-    public void testModifyMethodWithNoSetterInstallsNotPersistedFacetButDoesNotInstallADisabledFacets() {
-        val facetFactory = new PropertySetAndClearFacetFactory();
-        val facetFactoryForModify = new PropertyModifyFacetFactory();
-        val disabledFacetOnPropertyInferredFactory = new DisabledFacetOnPropertyInferredFactory();
-        facetFactory.setMetaModelContext(super.metaModelContext);
-        facetFactoryForModify.setMetaModelContext(super.metaModelContext);
-        disabledFacetOnPropertyInferredFactory.setMetaModelContext(super.metaModelContext);
-
-        class Customer {
-            @SuppressWarnings("unused")
-            public String getFirstName() {
-                return null;
-            }
-
-            @SuppressWarnings("unused")
-            public void modifyFirstName(final String firstName) {
-            }
-        }
-        final Method propertyAccessorMethod = findMethod(Customer.class, "getFirstName");
-
-        final FacetFactory.ProcessMethodContext processMethodContext = new FacetFactory.ProcessMethodContext(Customer.class, null,
-                propertyAccessorMethod, methodRemover, facetedMethod);
-        facetFactory.process(processMethodContext);
-        facetFactoryForModify.process(processMethodContext);
-        disabledFacetOnPropertyInferredFactory.process(processMethodContext);
-
-        Facet facet = facetedMethod.getFacet(SnapshotExcludeFacet.class);
-        assertNotNull(facet);
-        assertTrue(facet instanceof SnapshotExcludeFacetInferred);
-
-        facet = facetedMethod.getFacet(DisabledFacet.class);
-        assertNull(facet);
-    }
-
-    public void testIfHaveSetterAndModifyFacetThenTheModifyFacetWinsOut() {
-
-        val facetFactory = new PropertySetAndClearFacetFactory();
-        val facetFactoryForModify = new PropertyModifyFacetFactory();
-        facetFactory.setMetaModelContext(super.metaModelContext);
-        facetFactoryForModify.setMetaModelContext(super.metaModelContext);
-
-        class Customer {
-            @SuppressWarnings("unused")
-            public String getFirstName() {
-                return null;
-            }
-
-            @SuppressWarnings("unused")
-            public void setFirstName(final String firstName) {
-            }
-
-            @SuppressWarnings("unused")
-            public void modifyFirstName(final String firstName) {
-            }
-        }
-        final Method propertyAccessorMethod = findMethod(Customer.class, "getFirstName");
-        final Method propertySetterMethod = findMethod(Customer.class, "setFirstName", new Class[] { String.class });
-        final Method propertyModifyMethod = findMethod(Customer.class, "modifyFirstName", new Class[] { String.class });
-
-        final FacetFactory.ProcessMethodContext processMethodContext = new FacetFactory.ProcessMethodContext(Customer.class, null,
-                propertyAccessorMethod, methodRemover, facetedMethod);
-        facetFactory.process(processMethodContext);
-        facetFactoryForModify.process(processMethodContext);
-
-        final Facet facet = facetedMethod.getFacet(PropertySetterFacet.class);
-        assertNotNull(facet);
-        assertTrue(facet instanceof PropertySetterFacetViaModifyMethod);
-        final PropertySetterFacetViaModifyMethod propertySetterFacet = (PropertySetterFacetViaModifyMethod) facet;
-        assertEquals(propertyModifyMethod, propertySetterFacet.getMethods().get(0));
-
-        assertTrue(methodRemover.getRemovedMethodMethodCalls().contains(propertySetterMethod));
-        assertTrue(methodRemover.getRemovedMethodMethodCalls().contains(propertyModifyMethod));
-    }
-
-    public void testClearFacet() {
-        val facetFactory = new PropertySetAndClearFacetFactory();
-        facetFactory.setMetaModelContext(super.metaModelContext);
-
-        class Customer {
-            @SuppressWarnings("unused")
-            public String getFirstName() {
-                return null;
-            }
-
-            @SuppressWarnings("unused")
-            public void clearFirstName() {
-            }
-        }
-        final Method propertyAccessorMethod = findMethod(Customer.class, "getFirstName");
-        final Method propertyClearMethod = findMethod(Customer.class, "clearFirstName");
-
-        facetFactory.process(new FacetFactory.ProcessMethodContext(Customer.class, null, propertyAccessorMethod, methodRemover, facetedMethod));
-
-        final Facet facet = facetedMethod.getFacet(PropertyClearFacet.class);
-        assertNotNull(facet);
-        assertTrue(facet instanceof PropertyClearFacetViaClearMethod);
-        final PropertyClearFacetViaClearMethod propertyClearFacet = (PropertyClearFacetViaClearMethod) facet;
-        assertEquals(propertyClearMethod, propertyClearFacet.getMethods().get(0));
-
-        assertTrue(methodRemover.getRemovedMethodMethodCalls().contains(propertyClearMethod));
-    }
-
     public void testClearFacetViaSetterIfNoExplicitClearMethod() {
-        val facetFactory = new PropertySetAndClearFacetFactory();
+        val facetFactory = new PropertySetterFacetFactory();
         facetFactory.setMetaModelContext(super.metaModelContext);
 
         class Customer {