You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2011/01/17 10:27:01 UTC
svn commit: r1059826 [6/8] - in /incubator/isis/trunk:
alternatives/objectstore/sql/persistor/src/main/java/org/apache/isis/alternatives/objectstore/sql/auto/
alternatives/progmodel/groovy/metamodel/src/main/java/org/apache/isis/progmodel/groovy/metamo...
Modified: incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/object/value/ValueFacetFactoryTest.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/object/value/ValueFacetFactoryTest.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/object/value/ValueFacetFactoryTest.java (original)
+++ incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/object/value/ValueFacetFactoryTest.java Mon Jan 17 09:26:54 2011
@@ -27,7 +27,9 @@ import org.apache.isis.applib.adapters.E
import org.apache.isis.applib.adapters.Parser;
import org.apache.isis.applib.annotation.Value;
import org.apache.isis.core.commons.config.IsisConfigurationDefault;
+import org.apache.isis.core.metamodel.facetapi.FacetHolderImpl;
import org.apache.isis.core.metamodel.facetapi.FeatureType;
+import org.apache.isis.core.metamodel.facets.FacetFactory.ProcessClassContext;
import org.apache.isis.core.metamodel.facets.object.encodeable.EncodableFacet;
import org.apache.isis.core.metamodel.facets.object.ident.title.TitleFacet;
import org.apache.isis.core.metamodel.facets.object.immutable.ImmutableFacet;
@@ -36,7 +38,8 @@ import org.apache.isis.core.metamodel.fa
import org.apache.isis.core.metamodel.facets.propparam.typicallength.TypicalLengthFacet;
import org.apache.isis.core.metamodel.runtimecontext.RuntimeContext;
import org.apache.isis.core.progmodel.facets.AbstractFacetFactoryTest;
-import org.apache.isis.core.progmodel.facets.object.defaults.DefaultedFacet;
+import org.apache.isis.core.progmodel.facets.ProgrammableMethodRemover;
+import org.apache.isis.core.progmodel.facets.defaults.DefaultedFacet;
import org.apache.isis.core.progmodel.facets.object.ebc.EqualByContentFacet;
public class ValueFacetFactoryTest extends AbstractFacetFactoryTest {
@@ -84,24 +87,24 @@ public class ValueFacetFactoryTest exten
public void testFacetPickedUp() {
- facetFactory.process(MyParseableUsingParserName2.class, methodRemover, facetHolder);
+ facetFactory.process(new ProcessClassContext(MyParseableUsingParserName2.class, methodRemover, facetedMethod));
- final ValueFacet facet = facetHolder.getFacet(ValueFacet.class);
+ final ValueFacet facet = facetedMethod.getFacet(ValueFacet.class);
assertNotNull(facet);
assertTrue(facet instanceof ValueFacetAnnotation);
}
public void testFacetFacetHolderStored() {
- facetFactory.process(MyParseableUsingParserName2.class, methodRemover, facetHolder);
+ facetFactory.process(new ProcessClassContext(MyParseableUsingParserName2.class, methodRemover, facetedMethod));
- final ValueFacetAnnotation valueFacet = (ValueFacetAnnotation) facetHolder.getFacet(ValueFacet.class);
- assertEquals(facetHolder, valueFacet.getFacetHolder());
+ final ValueFacetAnnotation valueFacet = (ValueFacetAnnotation) facetedMethod.getFacet(ValueFacet.class);
+ assertEquals(facetedMethod, valueFacet.getFacetHolder());
}
public void testNoMethodsRemoved() {
- facetFactory.process(MyParseableUsingParserName2.class, methodRemover, facetHolder);
+ facetFactory.process(new ProcessClassContext(MyParseableUsingParserName2.class, methodRemover, facetedMethod));
assertNoMethodsRemoved();
}
@@ -119,9 +122,9 @@ public class ValueFacetFactoryTest exten
public void testPickUpSemanticsProviderViaNameAndInstallsValueFacet() {
- facetFactory.process(MyValueSemanticsProviderUsingSemanticsProviderName.class, methodRemover, facetHolder);
+ facetFactory.process(new ProcessClassContext(MyValueSemanticsProviderUsingSemanticsProviderName.class, methodRemover, facetedMethod));
- assertNotNull(facetHolder.getFacet(ValueFacet.class));
+ assertNotNull(facetedMethod.getFacet(ValueFacet.class));
}
@Value(semanticsProviderClass = MyValueSemanticsProviderUsingSemanticsProviderClass.class)
@@ -137,9 +140,9 @@ public class ValueFacetFactoryTest exten
public void testPickUpSemanticsProviderViaClassAndInstallsValueFacet() {
- facetFactory.process(MyValueSemanticsProviderUsingSemanticsProviderClass.class, methodRemover, facetHolder);
+ facetFactory.process(new ProcessClassContext(MyValueSemanticsProviderUsingSemanticsProviderClass.class, methodRemover, facetedMethod));
- assertNotNull(facetHolder.getFacet(ValueFacet.class));
+ assertNotNull(facetedMethod.getFacet(ValueFacet.class));
}
public void testValueSemanticsProviderMustBeAValueSemanticsProvider() {
@@ -160,10 +163,10 @@ public class ValueFacetFactoryTest exten
}
public void testValueSemanticsProviderMustHaveANoArgConstructor() {
- facetFactory.process(MyValueSemanticsProviderWithoutNoArgConstructor.class, methodRemover, facetHolder);
+ facetFactory.process(new ProcessClassContext(MyValueSemanticsProviderWithoutNoArgConstructor.class, methodRemover, facetedMethod));
// the fact that we have an immutable means that the provider wasn't picked up
- assertNotNull(facetHolder.getFacet(ImmutableFacet.class));
+ assertNotNull(facetedMethod.getFacet(ImmutableFacet.class));
}
@Value(semanticsProviderClass = MyValueSemanticsProviderWithoutPublicNoArgConstructor.class)
@@ -182,15 +185,15 @@ public class ValueFacetFactoryTest exten
}
public void testValueSemanticsProviderMustHaveAPublicNoArgConstructor() {
- facetFactory.process(MyValueSemanticsProviderWithoutPublicNoArgConstructor.class, methodRemover, facetHolder);
+ facetFactory.process(new ProcessClassContext(MyValueSemanticsProviderWithoutPublicNoArgConstructor.class, methodRemover, facetedMethod));
// the fact that we have an immutable means that the provider wasn't picked up
- assertNotNull(facetHolder.getFacet(ImmutableFacet.class));
+ assertNotNull(facetedMethod.getFacet(ImmutableFacet.class));
}
public void testValueSemanticsProviderThatIsNotAParserDoesNotInstallParseableFacet() {
- facetFactory.process(MyValueSemanticsProviderUsingSemanticsProviderClass.class, methodRemover, facetHolder);
- assertNull(facetHolder.getFacet(ParseableFacet.class));
+ facetFactory.process(new ProcessClassContext(MyValueSemanticsProviderUsingSemanticsProviderClass.class, methodRemover, facetedMethod));
+ assertNull(facetedMethod.getFacet(ParseableFacet.class));
}
@Value(semanticsProviderName = "org.apache.isis.core.progmodel.facets.object.value.ValueFacetFactoryTest$MyValueSemanticsProviderThatIsAParser")
@@ -232,23 +235,23 @@ public class ValueFacetFactoryTest exten
}
public void testValueSemanticsProviderThatIsAParserInstallsParseableFacet() {
- facetFactory.process(MyValueSemanticsProviderThatIsAParser.class, methodRemover, facetHolder);
- assertNotNull(facetHolder.getFacet(ParseableFacet.class));
+ facetFactory.process(new ProcessClassContext(MyValueSemanticsProviderThatIsAParser.class, methodRemover, facetedMethod));
+ assertNotNull(facetedMethod.getFacet(ParseableFacet.class));
}
public void testValueSemanticsProviderThatIsAParserInstallsTitleFacet() {
- facetFactory.process(MyValueSemanticsProviderThatIsAParser.class, methodRemover, facetHolder);
- assertNotNull(facetHolder.getFacet(TitleFacet.class));
+ facetFactory.process(new ProcessClassContext(MyValueSemanticsProviderThatIsAParser.class, methodRemover, facetedMethod));
+ assertNotNull(facetedMethod.getFacet(TitleFacet.class));
}
public void testValueSemanticsProviderThatIsAParserInstallsTypicalLengthFacet() {
- facetFactory.process(MyValueSemanticsProviderThatIsAParser.class, methodRemover, facetHolder);
- assertNotNull(facetHolder.getFacet(TypicalLengthFacet.class));
+ facetFactory.process(new ProcessClassContext(MyValueSemanticsProviderThatIsAParser.class, methodRemover, facetedMethod));
+ assertNotNull(facetedMethod.getFacet(TypicalLengthFacet.class));
}
public void testValueSemanticsProviderThatIsNotADefaultsProviderDoesNotInstallDefaultedFacet() {
- facetFactory.process(MyValueSemanticsProviderUsingSemanticsProviderClass.class, methodRemover, facetHolder);
- assertNull(facetHolder.getFacet(DefaultedFacet.class));
+ facetFactory.process(new ProcessClassContext(MyValueSemanticsProviderUsingSemanticsProviderClass.class, methodRemover, facetedMethod));
+ assertNull(facetedMethod.getFacet(DefaultedFacet.class));
}
@Value(semanticsProviderName = "org.apache.isis.core.progmodel.facets.object.value.ValueFacetFactoryTest$MyValueSemanticsProviderThatIsADefaultsProvider")
@@ -269,15 +272,15 @@ public class ValueFacetFactoryTest exten
}
public void testValueSemanticsProviderThatIsADefaultsProviderInstallsDefaultedFacet() {
- facetFactory.process(MyValueSemanticsProviderThatIsADefaultsProvider.class, methodRemover, facetHolder);
- assertNotNull(facetHolder.getFacet(DefaultedFacet.class));
+ facetFactory.process(new ProcessClassContext(MyValueSemanticsProviderThatIsADefaultsProvider.class, methodRemover, facetedMethod));
+ assertNotNull(facetedMethod.getFacet(DefaultedFacet.class));
}
public void testValueSemanticsProviderThatIsNotAnEncoderDecoderDoesNotInstallEncodeableFacet() {
- facetFactory.process(MyValueSemanticsProviderUsingSemanticsProviderClass.class, methodRemover, facetHolder);
+ facetFactory.process(new ProcessClassContext(MyValueSemanticsProviderUsingSemanticsProviderClass.class, methodRemover, facetedMethod));
- assertNull(facetHolder.getFacet(EncodableFacet.class));
+ assertNull(facetedMethod.getFacet(EncodableFacet.class));
}
@Value(semanticsProviderName = "org.apache.isis.core.progmodel.facets.object.value.ValueFacetFactoryTest$MyValueSemanticsProviderThatIsAnEncoderDecoder")
@@ -304,9 +307,9 @@ public class ValueFacetFactoryTest exten
public void testValueSemanticsProviderThatIsAnEncoderInstallsEncodeableFacet() {
- facetFactory.process(MyValueSemanticsProviderThatIsAnEncoderDecoder.class, methodRemover, facetHolder);
+ facetFactory.process(new ProcessClassContext(MyValueSemanticsProviderThatIsAnEncoderDecoder.class, methodRemover, facetedMethod));
- assertNotNull(facetHolder.getFacet(EncodableFacet.class));
+ assertNotNull(facetedMethod.getFacet(EncodableFacet.class));
}
public void testImmutableFacetsIsInstalledIfNoSemanticsProviderSpecified() {
@@ -315,9 +318,9 @@ public class ValueFacetFactoryTest exten
class MyNumberImmutableDefault {
}
- facetFactory.process(MyNumberImmutableDefault.class, methodRemover, facetHolder);
+ facetFactory.process(new ProcessClassContext(MyNumberImmutableDefault.class, methodRemover, facetedMethod));
- final ImmutableFacet facet = facetHolder.getFacet(ImmutableFacet.class);
+ final ImmutableFacet facet = facetedMethod.getFacet(ImmutableFacet.class);
assertNotNull(facet);
}
@@ -335,9 +338,9 @@ public class ValueFacetFactoryTest exten
public void testImmutableFacetsIsInstalledIfSpecifiesImmutable() {
- facetFactory.process(MyValueSemanticsProviderThatSpecifiesImmutableSemantic.class, methodRemover, facetHolder);
+ facetFactory.process(new ProcessClassContext(MyValueSemanticsProviderThatSpecifiesImmutableSemantic.class, methodRemover, facetedMethod));
- final ImmutableFacet facet = facetHolder.getFacet(ImmutableFacet.class);
+ final ImmutableFacet facet = facetedMethod.getFacet(ImmutableFacet.class);
assertNotNull(facet);
}
@@ -355,10 +358,9 @@ public class ValueFacetFactoryTest exten
public void testImmutableFacetsIsNotInstalledIfSpecifiesNotImmutable() {
- facetFactory.process(MyValueSemanticsProviderThatSpecifiesNotImmutableSemantic.class, methodRemover,
- facetHolder);
+ facetFactory.process(new ProcessClassContext(MyValueSemanticsProviderThatSpecifiesNotImmutableSemantic.class, methodRemover, facetedMethod));
- final ImmutableFacet facet = facetHolder.getFacet(ImmutableFacet.class);
+ final ImmutableFacet facet = facetedMethod.getFacet(ImmutableFacet.class);
assertNull(facet);
}
@@ -368,9 +370,9 @@ public class ValueFacetFactoryTest exten
class MyNumberEqualByContentDefault {
}
- facetFactory.process(MyNumberEqualByContentDefault.class, methodRemover, facetHolder);
+ facetFactory.process(new ProcessClassContext(MyNumberEqualByContentDefault.class, methodRemover, facetedMethod));
- final EqualByContentFacet facet = facetHolder.getFacet(EqualByContentFacet.class);
+ final EqualByContentFacet facet = facetedMethod.getFacet(EqualByContentFacet.class);
assertNotNull(facet);
}
@@ -388,10 +390,9 @@ public class ValueFacetFactoryTest exten
public void testEqualByContentFacetsIsInstalledIfSpecifiesEqualByContent() {
- facetFactory.process(MyValueSemanticsProviderThatSpecifiesEqualByContentSemantic.class, methodRemover,
- facetHolder);
+ facetFactory.process(new ProcessClassContext(MyValueSemanticsProviderThatSpecifiesEqualByContentSemantic.class, methodRemover, facetedMethod));
- final EqualByContentFacet facet = facetHolder.getFacet(EqualByContentFacet.class);
+ final EqualByContentFacet facet = facetedMethod.getFacet(EqualByContentFacet.class);
assertNotNull(facet);
}
@@ -409,10 +410,9 @@ public class ValueFacetFactoryTest exten
public void testEqualByContentFacetsIsNotInstalledIfSpecifiesNotEqualByContent() {
- facetFactory.process(MyValueSemanticsProviderThatSpecifiesNotEqualByContentSemantic.class, methodRemover,
- facetHolder);
+ facetFactory.process(new ProcessClassContext(MyValueSemanticsProviderThatSpecifiesNotEqualByContentSemantic.class, methodRemover, facetedMethod));
- final EqualByContentFacet facet = facetHolder.getFacet(EqualByContentFacet.class);
+ final EqualByContentFacet facet = facetedMethod.getFacet(EqualByContentFacet.class);
assertNull(facet);
}
@@ -459,11 +459,11 @@ public class ValueFacetFactoryTest exten
"org.apache.isis.core.progmodel.facets.object.value.ValueFacetFactoryTest$MyValueWithSemanticsProviderSpecifiedUsingConfiguration";
isisConfigurationDefault.add(ValueSemanticsProviderUtil.SEMANTICS_PROVIDER_NAME_KEY_PREFIX
+ canonical(className) + ValueSemanticsProviderUtil.SEMANTICS_PROVIDER_NAME_KEY_SUFFIX, className);
- facetFactory.process(MyValueWithSemanticsProviderSpecifiedUsingConfiguration.class, methodRemover, facetHolder);
- final ValueFacetAbstract facet = (ValueFacetAbstract) facetHolder.getFacet(ValueFacet.class);
+ facetFactory.process(new ProcessClassContext(MyValueWithSemanticsProviderSpecifiedUsingConfiguration.class, methodRemover, facetedMethod));
+ final ValueFacetAbstract facet = (ValueFacetAbstract) facetedMethod.getFacet(ValueFacet.class);
assertNotNull(facet);
// should also be a ParserFacet, since the VSP implements Parser
- final ParseableFacet parseableFacet = facetHolder.getFacet(ParseableFacet.class);
+ final ParseableFacet parseableFacet = facetedMethod.getFacet(ParseableFacet.class);
assertNotNull(parseableFacet);
}
@@ -509,12 +509,11 @@ public class ValueFacetFactoryTest exten
"org.apache.isis.core.progmodel.facets.object.value.ValueFacetFactoryTest$NonAnnotatedValueSemanticsProviderSpecifiedUsingConfiguration";
isisConfigurationDefault.add(ValueSemanticsProviderUtil.SEMANTICS_PROVIDER_NAME_KEY_PREFIX
+ canonical(className) + ValueSemanticsProviderUtil.SEMANTICS_PROVIDER_NAME_KEY_SUFFIX, className);
- facetFactory.process(NonAnnotatedValueSemanticsProviderSpecifiedUsingConfiguration.class, methodRemover,
- facetHolder);
- final ValueFacetAbstract facet = (ValueFacetAbstract) facetHolder.getFacet(ValueFacet.class);
+ facetFactory.process(new ProcessClassContext(NonAnnotatedValueSemanticsProviderSpecifiedUsingConfiguration.class, methodRemover, facetedMethod));
+ final ValueFacetAbstract facet = (ValueFacetAbstract) facetedMethod.getFacet(ValueFacet.class);
assertNotNull(facet);
// should also be a ParserFacet, since the VSP implements Parser
- final ParseableFacet parseableFacet = facetHolder.getFacet(ParseableFacet.class);
+ final ParseableFacet parseableFacet = facetedMethod.getFacet(ParseableFacet.class);
assertNotNull(parseableFacet);
}
Modified: incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/ordering/actionorder/ActionOrderAnnotationFacetFactoryTest.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/ordering/actionorder/ActionOrderAnnotationFacetFactoryTest.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/ordering/actionorder/ActionOrderAnnotationFacetFactoryTest.java (original)
+++ incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/ordering/actionorder/ActionOrderAnnotationFacetFactoryTest.java Mon Jan 17 09:26:54 2011
@@ -24,9 +24,12 @@ import java.util.List;
import org.apache.isis.applib.annotation.ActionOrder;
import org.apache.isis.core.metamodel.facetapi.Facet;
+import org.apache.isis.core.metamodel.facetapi.FacetHolderImpl;
import org.apache.isis.core.metamodel.facetapi.FeatureType;
+import org.apache.isis.core.metamodel.facets.FacetFactory.ProcessClassContext;
import org.apache.isis.core.metamodel.facets.ordering.actionorder.ActionOrderFacet;
import org.apache.isis.core.progmodel.facets.AbstractFacetFactoryTest;
+import org.apache.isis.core.progmodel.facets.ProgrammableMethodRemover;
public class ActionOrderAnnotationFacetFactoryTest extends AbstractFacetFactoryTest {
@@ -60,9 +63,9 @@ public class ActionOrderAnnotationFacetF
@ActionOrder("foo,bar")
class Customer {}
- facetFactory.process(Customer.class, methodRemover, facetHolder);
+ facetFactory.process(new ProcessClassContext(Customer.class, methodRemover, facetedMethod));
- final Facet facet = facetHolder.getFacet(ActionOrderFacet.class);
+ final Facet facet = facetedMethod.getFacet(ActionOrderFacet.class);
assertNotNull(facet);
assertTrue(facet instanceof ActionOrderFacetAnnotation);
final ActionOrderFacetAnnotation actionOrderFacetAnnotation = (ActionOrderFacetAnnotation) facet;
Modified: incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/ordering/fieldorder/FieldOrderAnnotationFacetFactoryTest.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/ordering/fieldorder/FieldOrderAnnotationFacetFactoryTest.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/ordering/fieldorder/FieldOrderAnnotationFacetFactoryTest.java (original)
+++ incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/ordering/fieldorder/FieldOrderAnnotationFacetFactoryTest.java Mon Jan 17 09:26:54 2011
@@ -24,9 +24,12 @@ import java.util.List;
import org.apache.isis.applib.annotation.FieldOrder;
import org.apache.isis.core.metamodel.facetapi.Facet;
+import org.apache.isis.core.metamodel.facetapi.FacetHolderImpl;
import org.apache.isis.core.metamodel.facetapi.FeatureType;
+import org.apache.isis.core.metamodel.facets.FacetFactory.ProcessClassContext;
import org.apache.isis.core.metamodel.layout.ordermethod.FieldOrderFacet;
import org.apache.isis.core.progmodel.facets.AbstractFacetFactoryTest;
+import org.apache.isis.core.progmodel.facets.ProgrammableMethodRemover;
public class FieldOrderAnnotationFacetFactoryTest extends AbstractFacetFactoryTest {
@@ -60,9 +63,9 @@ public class FieldOrderAnnotationFacetFa
@FieldOrder("foo,bar")
class Customer {}
- facetFactory.process(Customer.class, methodRemover, facetHolder);
+ facetFactory.process(new ProcessClassContext(Customer.class, methodRemover, facetedMethod));
- final Facet facet = facetHolder.getFacet(FieldOrderFacet.class);
+ final Facet facet = facetedMethod.getFacet(FieldOrderFacet.class);
assertNotNull(facet);
assertTrue(facet instanceof FieldOrderFacetAnnotation);
final FieldOrderFacetAnnotation fieldOrderFacetAnnotation = (FieldOrderFacetAnnotation) facet;
Modified: incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/ordering/memberorder/DeweyOrderSetTest.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/ordering/memberorder/DeweyOrderSetTest.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/ordering/memberorder/DeweyOrderSetTest.java (original)
+++ incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/ordering/memberorder/DeweyOrderSetTest.java Mon Jan 17 09:26:54 2011
@@ -30,7 +30,7 @@ import org.apache.log4j.LogManager;
import com.google.common.collect.ImmutableList;
-import org.apache.isis.core.metamodel.facetedmethod.FacetedMethod;
+import org.apache.isis.core.metamodel.facets.FacetedMethod;
import org.apache.isis.core.metamodel.layout.OrderSet;
import org.apache.isis.core.metamodel.layout.memberorderfacet.DeweyOrderSet;
Modified: incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/ordering/memberorder/MemberOrderAnnotationFacetFactoryTest.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/ordering/memberorder/MemberOrderAnnotationFacetFactoryTest.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/ordering/memberorder/MemberOrderAnnotationFacetFactoryTest.java (original)
+++ incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/ordering/memberorder/MemberOrderAnnotationFacetFactoryTest.java Mon Jan 17 09:26:54 2011
@@ -26,9 +26,12 @@ import java.util.List;
import org.apache.isis.applib.annotation.MemberOrder;
import org.apache.isis.core.metamodel.facetapi.Facet;
+import org.apache.isis.core.metamodel.facetapi.FacetHolderImpl;
import org.apache.isis.core.metamodel.facetapi.FeatureType;
+import org.apache.isis.core.metamodel.facets.FacetFactory.ProcessMethodContext;
import org.apache.isis.core.metamodel.facets.ordering.MemberOrderFacet;
import org.apache.isis.core.progmodel.facets.AbstractFacetFactoryTest;
+import org.apache.isis.core.progmodel.facets.ProgrammableMethodRemover;
public class MemberOrderAnnotationFacetFactoryTest extends AbstractFacetFactoryTest {
@@ -69,9 +72,9 @@ public class MemberOrderAnnotationFacetF
}
final Method method = findMethod(Customer.class, "getFirstName");
- facetFactory.process(Customer.class, method, methodRemover, facetHolder);
+ facetFactory.process(new ProcessMethodContext(Customer.class, method, methodRemover, facetedMethod));
- final Facet facet = facetHolder.getFacet(MemberOrderFacet.class);
+ final Facet facet = facetedMethod.getFacet(MemberOrderFacet.class);
assertNotNull(facet);
assertTrue(facet instanceof MemberOrderFacetAnnotation);
final MemberOrderFacetAnnotation memberOrderFacetAnnotation = (MemberOrderFacetAnnotation) facet;
@@ -94,9 +97,9 @@ public class MemberOrderAnnotationFacetF
}
final Method method = findMethod(Customer.class, "getOrders");
- facetFactory.process(Customer.class, method, methodRemover, facetHolder);
+ facetFactory.process(new ProcessMethodContext(Customer.class, method, methodRemover, facetedMethod));
- final Facet facet = facetHolder.getFacet(MemberOrderFacet.class);
+ final Facet facet = facetedMethod.getFacet(MemberOrderFacet.class);
assertNotNull(facet);
assertTrue(facet instanceof MemberOrderFacetAnnotation);
final MemberOrderFacetAnnotation memberOrderFacetAnnotation = (MemberOrderFacetAnnotation) facet;
@@ -114,9 +117,9 @@ public class MemberOrderAnnotationFacetF
}
final Method method = findMethod(Customer.class, "someAction");
- facetFactory.process(Customer.class, method, methodRemover, facetHolder);
+ facetFactory.process(new ProcessMethodContext(Customer.class, method, methodRemover, facetedMethod));
- final Facet facet = facetHolder.getFacet(MemberOrderFacet.class);
+ final Facet facet = facetedMethod.getFacet(MemberOrderFacet.class);
assertNotNull(facet);
assertTrue(facet instanceof MemberOrderFacetAnnotation);
final MemberOrderFacetAnnotation memberOrderFacetAnnotation = (MemberOrderFacetAnnotation) facet;
Modified: incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/ordering/memberorder/MemberOrderComparatorTest.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/ordering/memberorder/MemberOrderComparatorTest.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/ordering/memberorder/MemberOrderComparatorTest.java (original)
+++ incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/ordering/memberorder/MemberOrderComparatorTest.java Mon Jan 17 09:26:54 2011
@@ -26,7 +26,7 @@ import junit.framework.TestSuite;
import org.apache.log4j.Level;
import org.apache.log4j.LogManager;
-import org.apache.isis.core.metamodel.facetedmethod.FacetedMethod;
+import org.apache.isis.core.metamodel.facets.FacetedMethod;
import org.apache.isis.core.metamodel.layout.memberorderfacet.MemberOrderComparator;
Modified: incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/propcoll/notpersisted/NotPersistedAnnotationFacetFactoryTest.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/propcoll/notpersisted/NotPersistedAnnotationFacetFactoryTest.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/propcoll/notpersisted/NotPersistedAnnotationFacetFactoryTest.java (original)
+++ incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/propcoll/notpersisted/NotPersistedAnnotationFacetFactoryTest.java Mon Jan 17 09:26:54 2011
@@ -26,9 +26,12 @@ import java.util.List;
import org.apache.isis.applib.annotation.NotPersisted;
import org.apache.isis.core.metamodel.facetapi.Facet;
+import org.apache.isis.core.metamodel.facetapi.FacetHolderImpl;
import org.apache.isis.core.metamodel.facetapi.FeatureType;
+import org.apache.isis.core.metamodel.facets.FacetFactory.ProcessMethodContext;
import org.apache.isis.core.metamodel.facets.propcoll.notpersisted.NotPersistedFacet;
import org.apache.isis.core.progmodel.facets.AbstractFacetFactoryTest;
+import org.apache.isis.core.progmodel.facets.ProgrammableMethodRemover;
public class NotPersistedAnnotationFacetFactoryTest extends AbstractFacetFactoryTest {
@@ -69,9 +72,9 @@ public class NotPersistedAnnotationFacet
}
final Method method = findMethod(Customer.class, "getFirstName");
- facetFactory.process(Customer.class, method, methodRemover, facetHolder);
+ facetFactory.process(new ProcessMethodContext(Customer.class, method, methodRemover, facetedMethod));
- final Facet facet = facetHolder.getFacet(NotPersistedFacet.class);
+ final Facet facet = facetedMethod.getFacet(NotPersistedFacet.class);
assertNotNull(facet);
assertTrue(facet instanceof NotPersistedFacetAnnotation);
@@ -90,9 +93,9 @@ public class NotPersistedAnnotationFacet
}
final Method method = findMethod(Customer.class, "getOrders");
- facetFactory.process(Customer.class, method, methodRemover, facetHolder);
+ facetFactory.process(new ProcessMethodContext(Customer.class, method, methodRemover, facetedMethod));
- final Facet facet = facetHolder.getFacet(NotPersistedFacet.class);
+ final Facet facet = facetedMethod.getFacet(NotPersistedFacet.class);
assertNotNull(facet);
assertTrue(facet instanceof NotPersistedFacetAnnotation);
Copied: incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/properties/PropertyMethodsFacetFactoryTest.java (from r1056813, incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/properties/PropertyFieldMethodsFacetFactoryTest.java)
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/properties/PropertyMethodsFacetFactoryTest.java?p2=incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/properties/PropertyMethodsFacetFactoryTest.java&p1=incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/properties/PropertyFieldMethodsFacetFactoryTest.java&r1=1056813&r2=1059826&rev=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/properties/PropertyFieldMethodsFacetFactoryTest.java (original)
+++ incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/properties/PropertyMethodsFacetFactoryTest.java Mon Jan 17 09:26:54 2011
@@ -26,10 +26,11 @@ import java.util.List;
import org.apache.isis.applib.security.UserMemento;
import org.apache.isis.core.metamodel.facetapi.Facet;
import org.apache.isis.core.metamodel.facetapi.FeatureType;
+import org.apache.isis.core.metamodel.facets.FacetFactory.ProcessMethodContext;
import org.apache.isis.core.metamodel.facets.hide.HiddenFacet;
import org.apache.isis.core.metamodel.facets.naming.describedas.DescribedAsFacet;
import org.apache.isis.core.metamodel.facets.naming.named.NamedFacet;
-import org.apache.isis.core.metamodel.facets.propcoll.access.PropertyAccessorFacet;
+import org.apache.isis.core.metamodel.facets.propcoll.access.PropertyOrCollectionAccessorFacet;
import org.apache.isis.core.metamodel.facets.propcoll.notpersisted.NotPersistedFacet;
import org.apache.isis.core.metamodel.facets.properties.choices.PropertyChoicesFacet;
import org.apache.isis.core.metamodel.facets.properties.defaults.PropertyDefaultFacet;
@@ -37,52 +38,57 @@ import org.apache.isis.core.metamodel.fa
import org.apache.isis.core.metamodel.facets.properties.modify.PropertyInitializationFacet;
import org.apache.isis.core.metamodel.facets.properties.modify.PropertySetterFacet;
import org.apache.isis.core.progmodel.facets.AbstractFacetFactoryTest;
-import org.apache.isis.core.progmodel.facets.actions.DescribedAsFacetViaMethod;
-import org.apache.isis.core.progmodel.facets.actions.NamedFacetViaMethod;
-import org.apache.isis.core.progmodel.facets.disable.DisableForContextFacet;
-import org.apache.isis.core.progmodel.facets.disable.DisableForContextFacetViaMethod;
-import org.apache.isis.core.progmodel.facets.disable.DisableForSessionFacet;
-import org.apache.isis.core.progmodel.facets.disable.DisableForSessionFacetViaMethod;
-import org.apache.isis.core.progmodel.facets.disable.DisabledFacet;
-import org.apache.isis.core.progmodel.facets.disable.DisabledFacetAlways;
-import org.apache.isis.core.progmodel.facets.hide.HiddenFacetAlways;
-import org.apache.isis.core.progmodel.facets.hide.HideForContextFacet;
-import org.apache.isis.core.progmodel.facets.hide.HideForContextFacetViaMethod;
-import org.apache.isis.core.progmodel.facets.hide.HideForSessionFacet;
-import org.apache.isis.core.progmodel.facets.hide.HideForSessionFacetViaMethod;
-import org.apache.isis.core.progmodel.facets.propcoll.access.PropertyAccessorFacetViaAccessor;
+import org.apache.isis.core.progmodel.facets.members.describedas.staticmethod.DescribedAsFacetViaDescriptionMethodFacetFactory;
+import org.apache.isis.core.progmodel.facets.members.describedas.staticmethod.DescribedAsFacetViaMethod;
+import org.apache.isis.core.progmodel.facets.members.disable.DisableForContextFacet;
+import org.apache.isis.core.progmodel.facets.members.disable.DisableForSessionFacet;
+import org.apache.isis.core.progmodel.facets.members.disable.DisabledFacet;
+import org.apache.isis.core.progmodel.facets.members.disable.forsession.DisableForSessionFacetViaMethod;
+import org.apache.isis.core.progmodel.facets.members.disable.forsession.DisabledFacetViaDisableForSessionMethodFacetFactory;
+import org.apache.isis.core.progmodel.facets.members.disable.method.DisableForContextFacetViaMethod;
+import org.apache.isis.core.progmodel.facets.members.disable.method.DisabledFacetViaDisableMethodFacetFactory;
+import org.apache.isis.core.progmodel.facets.members.disable.staticmethod.DisabledFacetAlways;
+import org.apache.isis.core.progmodel.facets.members.disable.staticmethod.DisabledFacetViaProtectMethodFacetFactory;
+import org.apache.isis.core.progmodel.facets.members.hide.HideForContextFacet;
+import org.apache.isis.core.progmodel.facets.members.hide.HideForSessionFacet;
+import org.apache.isis.core.progmodel.facets.members.hide.forsession.HiddenFacetViaHideForSessionMethodFacetFactory;
+import org.apache.isis.core.progmodel.facets.members.hide.forsession.HideForSessionFacetViaMethod;
+import org.apache.isis.core.progmodel.facets.members.hide.method.HiddenFacetViaHideMethodFacetFactory;
+import org.apache.isis.core.progmodel.facets.members.hide.method.HideForContextFacetViaMethod;
+import org.apache.isis.core.progmodel.facets.members.hide.staticmethod.HiddenFacetAlways;
+import org.apache.isis.core.progmodel.facets.members.hide.staticmethod.HiddenFacetViaAlwaysHideMethodFacetFactory;
+import org.apache.isis.core.progmodel.facets.members.name.staticmethod.NamedFacetViaMethod;
+import org.apache.isis.core.progmodel.facets.members.name.staticmethod.NamedFacetViaNameMethodFacetFactory;
import org.apache.isis.core.progmodel.facets.propcoll.derived.DerivedFacetInferred;
+import org.apache.isis.core.progmodel.facets.properties.accessor.PropertyAccessorFacetFactory;
+import org.apache.isis.core.progmodel.facets.properties.accessor.PropertyOrCollectionAccessorFacetViaAccessor;
+import org.apache.isis.core.progmodel.facets.properties.choices.PropertyChoicesFacetFactory;
import org.apache.isis.core.progmodel.facets.properties.choices.PropertyChoicesFacetViaMethod;
+import org.apache.isis.core.progmodel.facets.properties.defaults.PropertyDefaultFacetFactory;
import org.apache.isis.core.progmodel.facets.properties.defaults.PropertyDefaultFacetViaMethod;
import org.apache.isis.core.progmodel.facets.properties.modify.PropertyClearFacetViaClearMethod;
import org.apache.isis.core.progmodel.facets.properties.modify.PropertyClearFacetViaSetterMethod;
import org.apache.isis.core.progmodel.facets.properties.modify.PropertyInitializationFacetViaSetterMethod;
+import org.apache.isis.core.progmodel.facets.properties.modify.PropertyModifyFacetFactory;
+import org.apache.isis.core.progmodel.facets.properties.modify.PropertySetAndClearFacetFactory;
import org.apache.isis.core.progmodel.facets.properties.modify.PropertySetterFacetViaModifyMethod;
import org.apache.isis.core.progmodel.facets.properties.modify.PropertySetterFacetViaSetterMethod;
import org.apache.isis.core.progmodel.facets.properties.validate.PropertyValidateFacet;
+import org.apache.isis.core.progmodel.facets.properties.validate.PropertyValidateFacetFactory;
import org.apache.isis.core.progmodel.facets.properties.validate.PropertyValidateFacetViaMethod;
-public class PropertyFieldMethodsFacetFactoryTest extends AbstractFacetFactoryTest {
-
- private PropertyMethodsFacetFactory facetFactory;
+public class PropertyMethodsFacetFactoryTest extends AbstractFacetFactoryTest {
+
+ /**
+ * TODO: copy for other facet factories also.
+ */
@Override
- protected void setUp() throws Exception {
- super.setUp();
-
- facetFactory = new PropertyMethodsFacetFactory();
- facetFactory.setSpecificationLookup(reflector);
- }
+ public void testFeatureTypes() {
+ PropertyAccessorFacetFactory facetFactory = new PropertyAccessorFacetFactory();
+ facetFactory.setSpecificationLookup(reflector);
- @Override
- protected void tearDown() throws Exception {
- facetFactory = null;
- super.tearDown();
- }
-
- @Override
- public void testFeatureTypes() {
final List<FeatureType> featureTypes = facetFactory.getFeatureTypes();
assertFalse(contains(featureTypes, FeatureType.OBJECT));
assertTrue(contains(featureTypes, FeatureType.PROPERTY));
@@ -92,6 +98,9 @@ public class PropertyFieldMethodsFacetFa
}
public void testPropertyAccessorFacetIsInstalledAndMethodRemoved() {
+ PropertyAccessorFacetFactory facetFactory = new PropertyAccessorFacetFactory();
+ facetFactory.setSpecificationLookup(reflector);
+
@edu.umd.cs.findbugs.annotations.SuppressWarnings("UMAC_UNCALLABLE_METHOD_OF_ANONYMOUS_CLASS")
class Customer {
@SuppressWarnings("unused")
@@ -101,18 +110,21 @@ public class PropertyFieldMethodsFacetFa
}
final Method propertyAccessorMethod = findMethod(Customer.class, "getFirstName");
- facetFactory.process(CustomerStatic.class, propertyAccessorMethod, methodRemover, facetHolder);
+ facetFactory.process(new ProcessMethodContext(CustomerStatic.class, propertyAccessorMethod, methodRemover, facetedMethod));
- final Facet facet = facetHolder.getFacet(PropertyAccessorFacet.class);
+ final Facet facet = facetedMethod.getFacet(PropertyOrCollectionAccessorFacet.class);
assertNotNull(facet);
- assertTrue(facet instanceof PropertyAccessorFacetViaAccessor);
- final PropertyAccessorFacetViaAccessor propertyAccessorFacetViaAccessor = (PropertyAccessorFacetViaAccessor) facet;
- assertEquals(propertyAccessorMethod, propertyAccessorFacetViaAccessor.getMethods().get(0));
+ assertTrue(facet instanceof PropertyOrCollectionAccessorFacetViaAccessor);
+ final PropertyOrCollectionAccessorFacetViaAccessor propertyOrCollectionAccessorFacetViaAccessor = (PropertyOrCollectionAccessorFacetViaAccessor) facet;
+ assertEquals(propertyAccessorMethod, propertyOrCollectionAccessorFacetViaAccessor.getMethods().get(0));
assertTrue(methodRemover.getRemoveMethodMethodCalls().contains(propertyAccessorMethod));
}
public void testSetterFacetIsInstalledForSetterMethodAndMethodRemoved() {
+ PropertySetAndClearFacetFactory facetFactory = new PropertySetAndClearFacetFactory();
+ facetFactory.setSpecificationLookup(reflector);
+
@edu.umd.cs.findbugs.annotations.SuppressWarnings("UMAC_UNCALLABLE_METHOD_OF_ANONYMOUS_CLASS")
class Customer {
@SuppressWarnings("unused")
@@ -126,9 +138,9 @@ public class PropertyFieldMethodsFacetFa
final Method propertyAccessorMethod = findMethod(Customer.class, "getFirstName");
final Method propertySetterMethod = findMethod(Customer.class, "setFirstName", new Class[] { String.class });
- facetFactory.process(Customer.class, propertyAccessorMethod, methodRemover, facetHolder);
+ facetFactory.process(new ProcessMethodContext(Customer.class, propertyAccessorMethod, methodRemover, facetedMethod));
- final Facet facet = facetHolder.getFacet(PropertySetterFacet.class);
+ final Facet facet = facetedMethod.getFacet(PropertySetterFacet.class);
assertNotNull(facet);
assertTrue(facet instanceof PropertySetterFacetViaSetterMethod);
final PropertySetterFacetViaSetterMethod propertySetterFacet = (PropertySetterFacetViaSetterMethod) facet;
@@ -138,6 +150,9 @@ public class PropertyFieldMethodsFacetFa
}
public void testInitializationFacetIsInstalledForSetterMethodAndMethodRemoved() {
+ PropertySetAndClearFacetFactory facetFactory = new PropertySetAndClearFacetFactory();
+ facetFactory.setSpecificationLookup(reflector);
+
@edu.umd.cs.findbugs.annotations.SuppressWarnings("UMAC_UNCALLABLE_METHOD_OF_ANONYMOUS_CLASS")
class Customer {
@SuppressWarnings("unused")
@@ -151,9 +166,9 @@ public class PropertyFieldMethodsFacetFa
final Method propertyAccessorMethod = findMethod(Customer.class, "getFirstName");
final Method propertySetterMethod = findMethod(Customer.class, "setFirstName", new Class[] { String.class });
- facetFactory.process(Customer.class, propertyAccessorMethod, methodRemover, facetHolder);
+ facetFactory.process(new ProcessMethodContext(Customer.class, propertyAccessorMethod, methodRemover, facetedMethod));
- final Facet facet = facetHolder.getFacet(PropertyInitializationFacet.class);
+ final Facet facet = facetedMethod.getFacet(PropertyInitializationFacet.class);
assertNotNull(facet);
assertTrue(facet instanceof PropertyInitializationFacet);
final PropertyInitializationFacetViaSetterMethod propertySetterFacet = (PropertyInitializationFacetViaSetterMethod) facet;
@@ -163,6 +178,9 @@ public class PropertyFieldMethodsFacetFa
}
public void testSetterFacetIsInstalledMeansNoDisabledOrDerivedFacetsInstalled() {
+ PropertySetAndClearFacetFactory facetFactory = new PropertySetAndClearFacetFactory();
+ facetFactory.setSpecificationLookup(reflector);
+
@edu.umd.cs.findbugs.annotations.SuppressWarnings("UMAC_UNCALLABLE_METHOD_OF_ANONYMOUS_CLASS")
class Customer {
@SuppressWarnings("unused")
@@ -175,13 +193,19 @@ public class PropertyFieldMethodsFacetFa
}
final Method propertyAccessorMethod = findMethod(Customer.class, "getFirstName");
- facetFactory.process(Customer.class, propertyAccessorMethod, methodRemover, facetHolder);
+ facetFactory.process(new ProcessMethodContext(Customer.class, propertyAccessorMethod, methodRemover, facetedMethod));
- assertNull(facetHolder.getFacet(NotPersistedFacet.class));
- assertNull(facetHolder.getFacet(NotPersistedFacet.class));
+ assertNull(facetedMethod.getFacet(NotPersistedFacet.class));
+ assertNull(facetedMethod.getFacet(NotPersistedFacet.class));
}
- public void testSetterFacetIsInstalledForModifyMethodAndMethodRemoved() {
+ public void testSetterFacetIsInstalledForModifyMethodAndMethodRemoved() {
+
+ PropertyModifyFacetFactory facetFactoryForModify = new PropertyModifyFacetFactory();
+ facetFactoryForModify.setSpecificationLookup(reflector);
+ PropertySetAndClearFacetFactory facetFactoryForSetter = new PropertySetAndClearFacetFactory();
+ facetFactoryForSetter.setSpecificationLookup(reflector);
+
@edu.umd.cs.findbugs.annotations.SuppressWarnings("UMAC_UNCALLABLE_METHOD_OF_ANONYMOUS_CLASS")
class Customer {
@SuppressWarnings("unused")
@@ -195,9 +219,11 @@ public class PropertyFieldMethodsFacetFa
final Method propertyAccessorMethod = findMethod(Customer.class, "getFirstName");
final Method propertyModifyMethod = findMethod(Customer.class, "modifyFirstName", new Class[] { String.class });
- facetFactory.process(Customer.class, propertyAccessorMethod, methodRemover, facetHolder);
+ final ProcessMethodContext processMethodContext = new ProcessMethodContext(Customer.class, propertyAccessorMethod, methodRemover, facetedMethod);
+ facetFactoryForModify.process(processMethodContext);
+ facetFactoryForSetter.process(processMethodContext);
- final Facet facet = facetHolder.getFacet(PropertySetterFacet.class);
+ final Facet facet = facetedMethod.getFacet(PropertySetterFacet.class);
assertNotNull(facet);
assertTrue(facet instanceof PropertySetterFacetViaModifyMethod);
final PropertySetterFacetViaModifyMethod propertySetterFacet = (PropertySetterFacetViaModifyMethod) facet;
@@ -207,6 +233,11 @@ public class PropertyFieldMethodsFacetFa
}
public void testModifyMethodWithNoSetterStillInstallsDisabledAndDerivedFacets() {
+ PropertySetAndClearFacetFactory facetFactory = new PropertySetAndClearFacetFactory();
+ facetFactory.setSpecificationLookup(reflector);
+ PropertyModifyFacetFactory facetFactoryForModify = new PropertyModifyFacetFactory();
+ facetFactoryForModify.setSpecificationLookup(reflector);
+
@edu.umd.cs.findbugs.annotations.SuppressWarnings("UMAC_UNCALLABLE_METHOD_OF_ANONYMOUS_CLASS")
class Customer {
@SuppressWarnings("unused")
@@ -219,18 +250,25 @@ public class PropertyFieldMethodsFacetFa
}
final Method propertyAccessorMethod = findMethod(Customer.class, "getFirstName");
- facetFactory.process(Customer.class, propertyAccessorMethod, methodRemover, facetHolder);
+ final ProcessMethodContext processMethodContext = new ProcessMethodContext(Customer.class, propertyAccessorMethod, methodRemover, facetedMethod);
+ facetFactory.process(processMethodContext);
+ facetFactoryForModify.process(processMethodContext);
- Facet facet = facetHolder.getFacet(NotPersistedFacet.class);
+ Facet facet = facetedMethod.getFacet(NotPersistedFacet.class);
assertNotNull(facet);
assertTrue(facet instanceof DerivedFacetInferred);
- facet = facetHolder.getFacet(DisabledFacet.class);
+ facet = facetedMethod.getFacet(DisabledFacet.class);
assertNotNull(facet);
assertTrue(facet instanceof DisabledFacetAlways);
}
public void testIfHaveSetterAndModifyFacetThenTheModifyFacetWinsOut() {
+ PropertySetAndClearFacetFactory facetFactory = new PropertySetAndClearFacetFactory();
+ facetFactory.setSpecificationLookup(reflector);
+ PropertyModifyFacetFactory facetFactoryForModify = new PropertyModifyFacetFactory();
+ facetFactoryForModify.setSpecificationLookup(reflector);
+
@edu.umd.cs.findbugs.annotations.SuppressWarnings("UMAC_UNCALLABLE_METHOD_OF_ANONYMOUS_CLASS")
class Customer {
@SuppressWarnings("unused")
@@ -248,9 +286,11 @@ public class PropertyFieldMethodsFacetFa
final Method propertySetterMethod = findMethod(Customer.class, "setFirstName", new Class[] { String.class });
final Method propertyModifyMethod = findMethod(Customer.class, "modifyFirstName", new Class[] { String.class });
- facetFactory.process(Customer.class, propertyAccessorMethod, methodRemover, facetHolder);
+ final ProcessMethodContext processMethodContext = new ProcessMethodContext(Customer.class, propertyAccessorMethod, methodRemover, facetedMethod);
+ facetFactory.process(processMethodContext);
+ facetFactoryForModify.process(processMethodContext);
- final Facet facet = facetHolder.getFacet(PropertySetterFacet.class);
+ final Facet facet = facetedMethod.getFacet(PropertySetterFacet.class);
assertNotNull(facet);
assertTrue(facet instanceof PropertySetterFacetViaModifyMethod);
final PropertySetterFacetViaModifyMethod propertySetterFacet = (PropertySetterFacetViaModifyMethod) facet;
@@ -261,6 +301,9 @@ public class PropertyFieldMethodsFacetFa
}
public void testClearFacet() {
+ PropertySetAndClearFacetFactory facetFactory = new PropertySetAndClearFacetFactory();
+ facetFactory.setSpecificationLookup(reflector);
+
@edu.umd.cs.findbugs.annotations.SuppressWarnings("UMAC_UNCALLABLE_METHOD_OF_ANONYMOUS_CLASS")
class Customer {
@SuppressWarnings("unused")
@@ -274,9 +317,9 @@ public class PropertyFieldMethodsFacetFa
final Method propertyAccessorMethod = findMethod(Customer.class, "getFirstName");
final Method propertyClearMethod = findMethod(Customer.class, "clearFirstName");
- facetFactory.process(Customer.class, propertyAccessorMethod, methodRemover, facetHolder);
+ facetFactory.process(new ProcessMethodContext(Customer.class, propertyAccessorMethod, methodRemover, facetedMethod));
- final Facet facet = facetHolder.getFacet(PropertyClearFacet.class);
+ final Facet facet = facetedMethod.getFacet(PropertyClearFacet.class);
assertNotNull(facet);
assertTrue(facet instanceof PropertyClearFacetViaClearMethod);
final PropertyClearFacetViaClearMethod propertyClearFacet = (PropertyClearFacetViaClearMethod) facet;
@@ -286,6 +329,9 @@ public class PropertyFieldMethodsFacetFa
}
public void testClearFacetViaSetterIfNoExplicitClearMethod() {
+ PropertySetAndClearFacetFactory facetFactory = new PropertySetAndClearFacetFactory();
+ facetFactory.setSpecificationLookup(reflector);
+
@edu.umd.cs.findbugs.annotations.SuppressWarnings("UMAC_UNCALLABLE_METHOD_OF_ANONYMOUS_CLASS")
class Customer {
@SuppressWarnings("unused")
@@ -299,9 +345,9 @@ public class PropertyFieldMethodsFacetFa
final Method propertyAccessorMethod = findMethod(Customer.class, "getFirstName");
final Method propertySetterMethod = findMethod(Customer.class, "setFirstName", new Class[] { String.class });
- facetFactory.process(Customer.class, propertyAccessorMethod, methodRemover, facetHolder);
+ facetFactory.process(new ProcessMethodContext(Customer.class, propertyAccessorMethod, methodRemover, facetedMethod));
- final Facet facet = facetHolder.getFacet(PropertyClearFacet.class);
+ final Facet facet = facetedMethod.getFacet(PropertyClearFacet.class);
assertNotNull(facet);
assertTrue(facet instanceof PropertyClearFacetViaSetterMethod);
final PropertyClearFacetViaSetterMethod propertyClearFacet = (PropertyClearFacetViaSetterMethod) facet;
@@ -309,6 +355,9 @@ public class PropertyFieldMethodsFacetFa
}
public void testChoicesFacetFoundAndMethodRemoved() {
+ PropertyChoicesFacetFactory facetFactory = new PropertyChoicesFacetFactory();
+ facetFactory.setSpecificationLookup(reflector);
+
@edu.umd.cs.findbugs.annotations.SuppressWarnings("UMAC_UNCALLABLE_METHOD_OF_ANONYMOUS_CLASS")
class Customer {
@SuppressWarnings("unused")
@@ -324,9 +373,9 @@ public class PropertyFieldMethodsFacetFa
final Method propertyAccessorMethod = findMethod(Customer.class, "getFirstName");
final Method propertyChoicesMethod = findMethod(Customer.class, "choicesFirstName");
- facetFactory.process(Customer.class, propertyAccessorMethod, methodRemover, facetHolder);
+ facetFactory.process(new ProcessMethodContext(Customer.class, propertyAccessorMethod, methodRemover, facetedMethod));
- final Facet facet = facetHolder.getFacet(PropertyChoicesFacet.class);
+ final Facet facet = facetedMethod.getFacet(PropertyChoicesFacet.class);
assertNotNull(facet);
assertTrue(facet instanceof PropertyChoicesFacetViaMethod);
final PropertyChoicesFacetViaMethod propertyChoicesFacet = (PropertyChoicesFacetViaMethod) facet;
@@ -336,6 +385,9 @@ public class PropertyFieldMethodsFacetFa
}
public void testDefaultFacetFoundAndMethodRemoved() {
+ PropertyDefaultFacetFactory facetFactory = new PropertyDefaultFacetFactory();
+ facetFactory.setSpecificationLookup(reflector);
+
@edu.umd.cs.findbugs.annotations.SuppressWarnings("UMAC_UNCALLABLE_METHOD_OF_ANONYMOUS_CLASS")
class Customer {
@SuppressWarnings("unused")
@@ -351,9 +403,9 @@ public class PropertyFieldMethodsFacetFa
final Method propertyAccessorMethod = findMethod(Customer.class, "getFirstName");
final Method propertyDefaultMethod = findMethod(Customer.class, "defaultFirstName");
- facetFactory.process(Customer.class, propertyAccessorMethod, methodRemover, facetHolder);
+ facetFactory.process(new ProcessMethodContext(Customer.class, propertyAccessorMethod, methodRemover, facetedMethod));
- final Facet facet = facetHolder.getFacet(PropertyDefaultFacet.class);
+ final Facet facet = facetedMethod.getFacet(PropertyDefaultFacet.class);
assertNotNull(facet);
assertTrue(facet instanceof PropertyDefaultFacetViaMethod);
final PropertyDefaultFacetViaMethod propertyDefaultFacet = (PropertyDefaultFacetViaMethod) facet;
@@ -363,6 +415,9 @@ public class PropertyFieldMethodsFacetFa
}
public void testValidateFacetFoundAndMethodRemoved() {
+ PropertyValidateFacetFactory facetFactory = new PropertyValidateFacetFactory();
+ facetFactory.setSpecificationLookup(reflector);
+
@edu.umd.cs.findbugs.annotations.SuppressWarnings("UMAC_UNCALLABLE_METHOD_OF_ANONYMOUS_CLASS")
class Customer {
@SuppressWarnings("unused")
@@ -378,9 +433,9 @@ public class PropertyFieldMethodsFacetFa
final Method propertyAccessorMethod = findMethod(Customer.class, "getFirstName");
final Method propertyValidateMethod = findMethod(Customer.class, "validateFirstName", new Class[] { String.class });
- facetFactory.process(Customer.class, propertyAccessorMethod, methodRemover, facetHolder);
+ facetFactory.process(new ProcessMethodContext(Customer.class, propertyAccessorMethod, methodRemover, facetedMethod));
- final Facet facet = facetHolder.getFacet(PropertyValidateFacet.class);
+ final Facet facet = facetedMethod.getFacet(PropertyValidateFacet.class);
assertNotNull(facet);
assertTrue(facet instanceof PropertyValidateFacetViaMethod);
final PropertyValidateFacetViaMethod propertyValidateFacet = (PropertyValidateFacetViaMethod) facet;
@@ -390,6 +445,9 @@ public class PropertyFieldMethodsFacetFa
}
public void testDisableFacetFoundAndMethodRemoved() {
+ DisabledFacetViaDisableMethodFacetFactory facetFactory = new DisabledFacetViaDisableMethodFacetFactory();
+ facetFactory.setSpecificationLookup(reflector);
+
@edu.umd.cs.findbugs.annotations.SuppressWarnings("UMAC_UNCALLABLE_METHOD_OF_ANONYMOUS_CLASS")
class Customer {
@SuppressWarnings("unused")
@@ -398,16 +456,16 @@ public class PropertyFieldMethodsFacetFa
}
@SuppressWarnings("unused")
- public String disableFirstName(final String fn) {
+ public String disableFirstName() {
return "disabled";
}
}
final Method propertyAccessorMethod = findMethod(Customer.class, "getFirstName");
- final Method propertyDisableMethod = findMethod(Customer.class, "disableFirstName", new Class[] { String.class });
+ final Method propertyDisableMethod = findMethod(Customer.class, "disableFirstName", new Class[] { });
- facetFactory.process(Customer.class, propertyAccessorMethod, methodRemover, facetHolder);
+ facetFactory.process(new ProcessMethodContext(Customer.class, propertyAccessorMethod, methodRemover, facetedMethod));
- final Facet facet = facetHolder.getFacet(DisableForContextFacet.class);
+ final Facet facet = facetedMethod.getFacet(DisableForContextFacet.class);
assertNotNull(facet);
assertTrue(facet instanceof DisableForContextFacetViaMethod);
final DisableForContextFacetViaMethod disableForContextFacet = (DisableForContextFacetViaMethod) facet;
@@ -417,6 +475,9 @@ public class PropertyFieldMethodsFacetFa
}
public void testDisableFacetNoArgsFoundAndMethodRemoved() {
+ DisabledFacetViaDisableMethodFacetFactory facetFactory = new DisabledFacetViaDisableMethodFacetFactory();
+ facetFactory.setSpecificationLookup(reflector);
+
@edu.umd.cs.findbugs.annotations.SuppressWarnings("UMAC_UNCALLABLE_METHOD_OF_ANONYMOUS_CLASS")
class Customer {
@SuppressWarnings("unused")
@@ -432,9 +493,9 @@ public class PropertyFieldMethodsFacetFa
final Method propertyAccessorMethod = findMethod(Customer.class, "getFirstName");
final Method propertyDisableMethod = findMethod(Customer.class, "disableFirstName");
- facetFactory.process(Customer.class, propertyAccessorMethod, methodRemover, facetHolder);
+ facetFactory.process(new ProcessMethodContext(Customer.class, propertyAccessorMethod, methodRemover, facetedMethod));
- final Facet facet = facetHolder.getFacet(DisableForContextFacet.class);
+ final Facet facet = facetedMethod.getFacet(DisableForContextFacet.class);
assertNotNull(facet);
assertTrue(facet instanceof DisableForContextFacetViaMethod);
final DisableForContextFacetViaMethod disableForContextFacet = (DisableForContextFacetViaMethod) facet;
@@ -444,6 +505,9 @@ public class PropertyFieldMethodsFacetFa
}
public void testHiddenFacetFoundAndMethodRemoved() {
+ HiddenFacetViaHideMethodFacetFactory facetFactory = new HiddenFacetViaHideMethodFacetFactory();
+ facetFactory.setSpecificationLookup(reflector);
+
@edu.umd.cs.findbugs.annotations.SuppressWarnings("UMAC_UNCALLABLE_METHOD_OF_ANONYMOUS_CLASS")
class Customer {
@SuppressWarnings("unused")
@@ -452,16 +516,16 @@ public class PropertyFieldMethodsFacetFa
}
@SuppressWarnings("unused")
- public boolean hideFirstName(final String fn) {
+ public boolean hideFirstName() {
return true;
}
}
final Method propertyAccessorMethod = findMethod(Customer.class, "getFirstName");
- final Method propertyHideMethod = findMethod(Customer.class, "hideFirstName", new Class[] { String.class });
+ final Method propertyHideMethod = findMethod(Customer.class, "hideFirstName", new Class[] { });
- facetFactory.process(Customer.class, propertyAccessorMethod, methodRemover, facetHolder);
+ facetFactory.process(new ProcessMethodContext(Customer.class, propertyAccessorMethod, methodRemover, facetedMethod));
- final Facet facet = facetHolder.getFacet(HideForContextFacet.class);
+ final Facet facet = facetedMethod.getFacet(HideForContextFacet.class);
assertNotNull(facet);
assertTrue(facet instanceof HideForContextFacetViaMethod);
final HideForContextFacetViaMethod hideForContextFacet = (HideForContextFacetViaMethod) facet;
@@ -471,6 +535,9 @@ public class PropertyFieldMethodsFacetFa
}
public void testHiddenFacetWithNoArgFoundAndMethodRemoved() {
+ HiddenFacetViaHideMethodFacetFactory facetFactory = new HiddenFacetViaHideMethodFacetFactory();
+ facetFactory.setSpecificationLookup(reflector);
+
@edu.umd.cs.findbugs.annotations.SuppressWarnings("UMAC_UNCALLABLE_METHOD_OF_ANONYMOUS_CLASS")
class Customer {
@SuppressWarnings("unused")
@@ -486,9 +553,9 @@ public class PropertyFieldMethodsFacetFa
final Method propertyAccessorMethod = findMethod(Customer.class, "getFirstName");
final Method propertyHideMethod = findMethod(Customer.class, "hideFirstName");
- facetFactory.process(Customer.class, propertyAccessorMethod, methodRemover, facetHolder);
+ facetFactory.process(new ProcessMethodContext(Customer.class, propertyAccessorMethod, methodRemover, facetedMethod));
- final Facet facet = facetHolder.getFacet(HideForContextFacet.class);
+ final Facet facet = facetedMethod.getFacet(HideForContextFacet.class);
assertNotNull(facet);
assertTrue(facet instanceof HideForContextFacetViaMethod);
final HideForContextFacetViaMethod hideForContextFacet = (HideForContextFacetViaMethod) facet;
@@ -498,6 +565,9 @@ public class PropertyFieldMethodsFacetFa
}
public void testPropertyFoundOnSuperclass() {
+ PropertyAccessorFacetFactory facetFactory = new PropertyAccessorFacetFactory();
+ facetFactory.setSpecificationLookup(reflector);
+
@edu.umd.cs.findbugs.annotations.SuppressWarnings("UMAC_UNCALLABLE_METHOD_OF_ANONYMOUS_CLASS")
class Customer {
@SuppressWarnings("unused")
@@ -511,16 +581,23 @@ public class PropertyFieldMethodsFacetFa
final Method propertyAccessorMethod = findMethod(Customer.class, "getFirstName");
- facetFactory.process(CustomerEx.class, propertyAccessorMethod, methodRemover, facetHolder);
+ facetFactory.process(new ProcessMethodContext(CustomerEx.class, propertyAccessorMethod, methodRemover, facetedMethod));
- final Facet facet = facetHolder.getFacet(PropertyAccessorFacet.class);
+ final Facet facet = facetedMethod.getFacet(PropertyOrCollectionAccessorFacet.class);
assertNotNull(facet);
- assertTrue(facet instanceof PropertyAccessorFacetViaAccessor);
- final PropertyAccessorFacetViaAccessor accessorFacet = (PropertyAccessorFacetViaAccessor) facet;
+ assertTrue(facet instanceof PropertyOrCollectionAccessorFacetViaAccessor);
+ final PropertyOrCollectionAccessorFacetViaAccessor accessorFacet = (PropertyOrCollectionAccessorFacetViaAccessor) facet;
assertEquals(propertyAccessorMethod, accessorFacet.getMethods().get(0));
}
public void testPropertyFoundOnSuperclassButHelperMethodFoundOnSubclass() {
+ PropertyAccessorFacetFactory facetFactory = new PropertyAccessorFacetFactory();
+ facetFactory.setSpecificationLookup(reflector);
+ HiddenFacetViaHideMethodFacetFactory facetFactoryForHide = new HiddenFacetViaHideMethodFacetFactory();
+ facetFactoryForHide.setSpecificationLookup(reflector);
+ DisabledFacetViaDisableMethodFacetFactory facetFactoryForDisable = new DisabledFacetViaDisableMethodFacetFactory();
+ facetFactoryForDisable.setSpecificationLookup(reflector);
+
@edu.umd.cs.findbugs.annotations.SuppressWarnings("UMAC_UNCALLABLE_METHOD_OF_ANONYMOUS_CLASS")
class Customer {
@SuppressWarnings("unused")
@@ -548,15 +625,18 @@ public class PropertyFieldMethodsFacetFa
final Method propertyHideMethod = findMethod(CustomerEx.class, "hideFirstName");
final Method propertyDisableMethod = findMethod(CustomerEx.class, "disableFirstName");
- facetFactory.process(CustomerEx.class, propertyAccessorMethod, methodRemover, facetHolder);
+ final ProcessMethodContext processMethodContext = new ProcessMethodContext(CustomerEx.class, propertyAccessorMethod, methodRemover, facetedMethod);
+ facetFactory.process(processMethodContext);
+ facetFactoryForHide.process(processMethodContext);
+ facetFactoryForDisable.process(processMethodContext);
- final Facet facet = facetHolder.getFacet(HideForContextFacet.class);
+ final Facet facet = facetedMethod.getFacet(HideForContextFacet.class);
assertNotNull(facet);
assertTrue(facet instanceof HideForContextFacetViaMethod);
final HideForContextFacetViaMethod hideForContextFacet = (HideForContextFacetViaMethod) facet;
assertEquals(propertyHideMethod, hideForContextFacet.getMethods().get(0));
- final Facet facet2 = facetHolder.getFacet(DisableForContextFacet.class);
+ final Facet facet2 = facetedMethod.getFacet(DisableForContextFacet.class);
assertNotNull(facet2);
assertTrue(facet2 instanceof DisableForContextFacetViaMethod);
final DisableForContextFacetViaMethod disableForContextFacet = (DisableForContextFacetViaMethod) facet2;
@@ -612,12 +692,15 @@ public class PropertyFieldMethodsFacetFa
}
public void testInstallsNamedFacetUsingNameMethodAndRemovesMethod() {
+ NamedFacetViaNameMethodFacetFactory facetFactory = new NamedFacetViaNameMethodFacetFactory();
+ facetFactory.setSpecificationLookup(reflector);
+
final Method propertyAccessorMethod = findMethod(CustomerStatic.class, "getFirstName");
final Method nameMethod = findMethod(CustomerStatic.class, "nameFirstName");
- facetFactory.process(CustomerStatic.class, propertyAccessorMethod, methodRemover, facetHolder);
+ facetFactory.process(new ProcessMethodContext(CustomerStatic.class, propertyAccessorMethod, methodRemover, facetedMethod));
- final Facet facet = facetHolder.getFacet(NamedFacet.class);
+ final Facet facet = facetedMethod.getFacet(NamedFacet.class);
assertNotNull(facet);
assertTrue(facet instanceof NamedFacetViaMethod);
final NamedFacetViaMethod namedFacet = (NamedFacetViaMethod) facet;
@@ -627,12 +710,15 @@ public class PropertyFieldMethodsFacetFa
}
public void testInstallsDescribedAsFacetUsingDescriptionAndRemovesMethod() {
+ DescribedAsFacetViaDescriptionMethodFacetFactory facetFactory = new DescribedAsFacetViaDescriptionMethodFacetFactory();
+ facetFactory.setSpecificationLookup(reflector);
+
final Method propertyAccessorMethod = findMethod(CustomerStatic.class, "getFirstName");
final Method descriptionMethod = findMethod(CustomerStatic.class, "descriptionFirstName");
- facetFactory.process(CustomerStatic.class, propertyAccessorMethod, methodRemover, facetHolder);
+ facetFactory.process(new ProcessMethodContext(CustomerStatic.class, propertyAccessorMethod, methodRemover, facetedMethod));
- final Facet facet = facetHolder.getFacet(DescribedAsFacet.class);
+ final Facet facet = facetedMethod.getFacet(DescribedAsFacet.class);
assertNotNull(facet);
assertTrue(facet instanceof DescribedAsFacetViaMethod);
final DescribedAsFacetViaMethod describedAsFacet = (DescribedAsFacetViaMethod) facet;
@@ -642,12 +728,15 @@ public class PropertyFieldMethodsFacetFa
}
public void testInstallsHiddenFacetUsingAlwaysHideAndRemovesMethod() {
+ HiddenFacetViaAlwaysHideMethodFacetFactory facetFactory = new HiddenFacetViaAlwaysHideMethodFacetFactory();
+ facetFactory.setSpecificationLookup(reflector);
+
final Method propertyAccessorMethod = findMethod(CustomerStatic.class, "getFirstName");
final Method propertyAlwaysHideMethod = findMethod(CustomerStatic.class, "alwaysHideFirstName");
- facetFactory.process(CustomerStatic.class, propertyAccessorMethod, methodRemover, facetHolder);
+ facetFactory.process(new ProcessMethodContext(CustomerStatic.class, propertyAccessorMethod, methodRemover, facetedMethod));
- final Facet facet = facetHolder.getFacet(HiddenFacet.class);
+ final Facet facet = facetedMethod.getFacet(HiddenFacet.class);
assertNotNull(facet);
assertTrue(facet instanceof HiddenFacetAlways);
@@ -655,23 +744,29 @@ public class PropertyFieldMethodsFacetFa
}
public void testInstallsHiddenFacetUsingAlwaysHideWhenNotAndRemovesMethod() {
+ HiddenFacetViaAlwaysHideMethodFacetFactory facetFactory = new HiddenFacetViaAlwaysHideMethodFacetFactory();
+ facetFactory.setSpecificationLookup(reflector);
+
final Method propertyAccessorMethod = findMethod(CustomerStatic.class, "getLastName");
final Method propertyAlwaysHideMethod = findMethod(CustomerStatic.class, "alwaysHideLastName");
- facetFactory.process(CustomerStatic.class, propertyAccessorMethod, methodRemover, facetHolder);
+ facetFactory.process(new ProcessMethodContext(CustomerStatic.class, propertyAccessorMethod, methodRemover, facetedMethod));
- assertNull(facetHolder.getFacet(HiddenFacet.class));
+ assertNull(facetedMethod.getFacet(HiddenFacet.class));
assertTrue(methodRemover.getRemoveMethodMethodCalls().contains(propertyAlwaysHideMethod));
}
public void testInstallsDisabledFacetUsingProtectAndRemovesMethod() {
+ DisabledFacetViaProtectMethodFacetFactory facetFactory = new DisabledFacetViaProtectMethodFacetFactory();
+ facetFactory.setSpecificationLookup(reflector);
+
final Method propertyAccessorMethod = findMethod(CustomerStatic.class, "getFirstName");
final Method propertyProtectMethod = findMethod(CustomerStatic.class, "protectFirstName");
- facetFactory.process(CustomerStatic.class, propertyAccessorMethod, methodRemover, facetHolder);
+ facetFactory.process(new ProcessMethodContext(CustomerStatic.class, propertyAccessorMethod, methodRemover, facetedMethod));
- final Facet facet = facetHolder.getFacet(DisabledFacet.class);
+ final Facet facet = facetedMethod.getFacet(DisabledFacet.class);
assertNotNull(facet);
assertTrue(facet instanceof DisabledFacetAlways);
@@ -679,24 +774,30 @@ public class PropertyFieldMethodsFacetFa
}
public void testDoesNotInstallDisabledFacetUsingProtectWhenNotAndRemovesMethod() {
+ DisabledFacetViaProtectMethodFacetFactory facetFactory = new DisabledFacetViaProtectMethodFacetFactory();
+ facetFactory.setSpecificationLookup(reflector);
+
final Method propertyAccessorMethod = findMethod(CustomerStatic.class, "getLastName");
final Method propertyProtectMethod = findMethod(CustomerStatic.class, "protectLastName");
- facetFactory.process(CustomerStatic.class, propertyAccessorMethod, methodRemover, facetHolder);
+ facetFactory.process(new ProcessMethodContext(CustomerStatic.class, propertyAccessorMethod, methodRemover, facetedMethod));
- final Facet facet = facetHolder.getFacet(DisabledFacet.class);
+ final Facet facet = facetedMethod.getFacet(DisabledFacet.class);
assertNull(facet);
assertTrue(methodRemover.getRemoveMethodMethodCalls().contains(propertyProtectMethod));
}
public void testInstallsHiddenForSessionFacetAndRemovesMethod() {
+ HiddenFacetViaHideForSessionMethodFacetFactory facetFactory = new HiddenFacetViaHideForSessionMethodFacetFactory();
+ facetFactory.setSpecificationLookup(reflector);
+
final Method propertyAccessorMethod = findMethod(CustomerStatic.class, "getFirstName");
final Method hideMethod = findMethod(CustomerStatic.class, "hideFirstName", new Class[] { UserMemento.class });
- facetFactory.process(CustomerStatic.class, propertyAccessorMethod, methodRemover, facetHolder);
+ facetFactory.process(new ProcessMethodContext(CustomerStatic.class, propertyAccessorMethod, methodRemover, facetedMethod));
- final Facet facet = facetHolder.getFacet(HideForSessionFacet.class);
+ final Facet facet = facetedMethod.getFacet(HideForSessionFacet.class);
assertNotNull(facet);
assertTrue(facet instanceof HideForSessionFacetViaMethod);
final HideForSessionFacetViaMethod hideForSessionFacetViaMethod = (HideForSessionFacetViaMethod) facet;
@@ -707,12 +808,15 @@ public class PropertyFieldMethodsFacetFa
}
public void testInstallsDisabledForSessionFacetAndRemovesMethod() {
+ DisabledFacetViaDisableForSessionMethodFacetFactory facetFactory = new DisabledFacetViaDisableForSessionMethodFacetFactory();
+ facetFactory.setSpecificationLookup(reflector);
+
final Method propertyAccessorMethod = findMethod(CustomerStatic.class, "getFirstName");
final Method disableMethod = findMethod(CustomerStatic.class, "disableFirstName", new Class[] { UserMemento.class });
- facetFactory.process(CustomerStatic.class, propertyAccessorMethod, methodRemover, facetHolder);
+ facetFactory.process(new ProcessMethodContext(CustomerStatic.class, propertyAccessorMethod, methodRemover, facetedMethod));
- final Facet facet = facetHolder.getFacet(DisableForSessionFacet.class);
+ final Facet facet = facetedMethod.getFacet(DisableForSessionFacet.class);
assertNotNull(facet);
assertTrue(facet instanceof DisableForSessionFacetViaMethod);
final DisableForSessionFacetViaMethod disableForSessionFacetViaMethod = (DisableForSessionFacetViaMethod) facet;
Modified: incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/propparam/multiline/MultiLineAnnotationFacetFactoryTest.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/propparam/multiline/MultiLineAnnotationFacetFactoryTest.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/propparam/multiline/MultiLineAnnotationFacetFactoryTest.java (original)
+++ incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/propparam/multiline/MultiLineAnnotationFacetFactoryTest.java Mon Jan 17 09:26:54 2011
@@ -26,8 +26,13 @@ import java.util.List;
import org.apache.isis.applib.annotation.MultiLine;
import org.apache.isis.core.metamodel.facetapi.Facet;
import org.apache.isis.core.metamodel.facetapi.FeatureType;
+import org.apache.isis.core.metamodel.facets.FacetFactory.ProcessClassContext;
+import org.apache.isis.core.metamodel.facets.FacetFactory.ProcessMethodContext;
+import org.apache.isis.core.metamodel.facets.FacetFactory.ProcessParameterContext;
import org.apache.isis.core.metamodel.facets.propparam.multiline.MultiLineFacet;
import org.apache.isis.core.progmodel.facets.AbstractFacetFactoryTest;
+import org.apache.isis.core.progmodel.facets.propparam.multiline.annotation.MultiLineAnnotationFacetFactory;
+import org.apache.isis.core.progmodel.facets.propparam.multiline.annotation.MultiLineFacetAnnotation;
public class MultiLineAnnotationFacetFactoryTest extends AbstractFacetFactoryTest {
@@ -61,9 +66,9 @@ public class MultiLineAnnotationFacetFac
@MultiLine(numberOfLines = 3, preventWrapping = false)
class Customer {}
- facetFactory.process(Customer.class, methodRemover, facetHolder);
+ facetFactory.process(new ProcessClassContext(Customer.class, methodRemover, facetedMethod));
- final Facet facet = facetHolder.getFacet(MultiLineFacet.class);
+ final Facet facet = facetedMethod.getFacet(MultiLineFacet.class);
assertNotNull(facet);
assertTrue(facet instanceof MultiLineFacetAnnotation);
final MultiLineFacetAnnotation multiLineFacetAnnotation = (MultiLineFacetAnnotation) facet;
@@ -82,9 +87,9 @@ public class MultiLineAnnotationFacetFac
}
final Method method = findMethod(Customer.class, "getFirstName");
- facetFactory.process(Customer.class, method, methodRemover, facetHolder);
+ facetFactory.process(new ProcessMethodContext(Customer.class, method, methodRemover, facetedMethod));
- final Facet facet = facetHolder.getFacet(MultiLineFacet.class);
+ final Facet facet = facetedMethod.getFacet(MultiLineFacet.class);
assertNotNull(facet);
assertTrue(facet instanceof MultiLineFacetAnnotation);
final MultiLineFacetAnnotation multiLineFacetAnnotation = (MultiLineFacetAnnotation) facet;
@@ -100,9 +105,9 @@ public class MultiLineAnnotationFacetFac
}
final Method method = findMethod(Customer.class, "someAction", new Class[] { String.class });
- facetFactory.processParams(method, 0, facetHolder);
+ facetFactory.processParams(new ProcessParameterContext(method, 0, facetedMethodParameter));
- final Facet facet = facetHolder.getFacet(MultiLineFacet.class);
+ final Facet facet = facetedMethodParameter.getFacet(MultiLineFacet.class);
assertNotNull(facet);
assertTrue(facet instanceof MultiLineFacetAnnotation);
final MultiLineFacetAnnotation multiLineFacetAnnotation = (MultiLineFacetAnnotation) facet;
@@ -115,9 +120,9 @@ public class MultiLineAnnotationFacetFac
@MultiLine
class Customer {}
- facetFactory.process(Customer.class, methodRemover, facetHolder);
+ facetFactory.process(new ProcessClassContext(Customer.class, methodRemover, facetedMethod));
- final Facet facet = facetHolder.getFacet(MultiLineFacet.class);
+ final Facet facet = facetedMethod.getFacet(MultiLineFacet.class);
final MultiLineFacetAnnotation multiLineFacetAnnotation = (MultiLineFacetAnnotation) facet;
assertEquals(6, multiLineFacetAnnotation.numberOfLines());
assertEquals(true, multiLineFacetAnnotation.preventWrapping());
@@ -134,9 +139,9 @@ public class MultiLineAnnotationFacetFac
}
final Method method = findMethod(Customer.class, "getNumberOfOrders");
- facetFactory.process(Customer.class, method, methodRemover, facetHolder);
+ facetFactory.process(new ProcessMethodContext(Customer.class, method, methodRemover, facetedMethod));
- final Facet facet = facetHolder.getFacet(MultiLineFacet.class);
+ final Facet facet = facetedMethod.getFacet(MultiLineFacet.class);
assertNull(facet);
}
@@ -148,9 +153,9 @@ public class MultiLineAnnotationFacetFac
}
final Method method = findMethod(Customer.class, "someAction", new Class[] { int.class });
- facetFactory.processParams(method, 0, facetHolder);
+ facetFactory.processParams(new ProcessParameterContext(method, 0, facetedMethodParameter));
- assertNull(facetHolder.getFacet(MultiLineFacet.class));
+ assertNull(facetedMethod.getFacet(MultiLineFacet.class));
}
}
Modified: incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/propparam/specification/MustSatisfySpecificationFacetFactoryProcessParameterTest.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/propparam/specification/MustSatisfySpecificationFacetFactoryProcessParameterTest.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/propparam/specification/MustSatisfySpecificationFacetFactoryProcessParameterTest.java (original)
+++ incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/propparam/specification/MustSatisfySpecificationFacetFactoryProcessParameterTest.java Mon Jan 17 09:26:54 2011
@@ -34,8 +34,8 @@ import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
-import org.apache.isis.core.metamodel.facetapi.FacetHolder;
-import org.apache.isis.core.metamodel.facetapi.MethodRemover;
+import org.apache.isis.core.metamodel.facets.FacetedMethodParameter;
+import org.apache.isis.core.metamodel.facets.FacetFactory.ProcessParameterContext;
@RunWith(JMock.class)
public class MustSatisfySpecificationFacetFactoryProcessParameterTest {
@@ -47,8 +47,7 @@ public class MustSatisfySpecificationFac
};
private MustSatisfySpecificationFacetFactory facetFactory;
- private MethodRemover mockMethodRemover;
- private FacetHolder mockFacetHolder;
+ private FacetedMethodParameter mockFacetedMethodParameter;
private Class<DomainObjectWithoutMustSatisfyAnnotations> domainObjectClassWithoutAnnotation;
private Class<DomainObjectWithMustSatisfyAnnotations> domainObjectClassWithAnnotation;
@@ -58,8 +57,7 @@ public class MustSatisfySpecificationFac
@Before
public void setUp() throws Exception {
facetFactory = new MustSatisfySpecificationFacetFactory();
- mockMethodRemover = mockery.mock(MethodRemover.class);
- mockFacetHolder = mockery.mock(FacetHolder.class);
+ mockFacetedMethodParameter = mockery.mock(FacetedMethodParameter.class);
domainObjectClassWithoutAnnotation = DomainObjectWithoutMustSatisfyAnnotations.class;
domainObjectClassWithAnnotation = DomainObjectWithMustSatisfyAnnotations.class;
changeLastNameMethodWithout = domainObjectClassWithoutAnnotation.getMethod("changeLastName", String.class);
@@ -69,24 +67,23 @@ public class MustSatisfySpecificationFac
@After
public void tearDown() throws Exception {
facetFactory = null;
- mockMethodRemover = null;
- mockFacetHolder = null;
+ mockFacetedMethodParameter = null;
}
@Test
public void addsAMustSatisfySpecificationFacetIfAnnotated() {
mockery.checking(new Expectations() {{
- one(mockFacetHolder).addFacet(with(anInstanceOf(MustSatisfySpecificationFacet.class)));
+ one(mockFacetedMethodParameter).addFacet(with(anInstanceOf(MustSatisfySpecificationFacet.class)));
}});
- facetFactory.processParams(changeLastNameMethodWith, 0, mockFacetHolder);
+ facetFactory.processParams(new ProcessParameterContext(changeLastNameMethodWith, 0, mockFacetedMethodParameter));
}
@Test
public void doesNotAddsAMustSatisfySpecificationFacetIfNotAnnotated() {
mockery.checking(new Expectations() {{
- never(mockFacetHolder).addFacet(with(anInstanceOf(MustSatisfySpecificationFacet.class)));
+ never(mockFacetedMethodParameter).addFacet(with(anInstanceOf(MustSatisfySpecificationFacet.class)));
}});
- facetFactory.processParams(changeLastNameMethodWithout, 0, mockFacetHolder);
+ facetFactory.processParams(new ProcessParameterContext(changeLastNameMethodWithout, 0, mockFacetedMethodParameter));
}
}
Modified: incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/propparam/specification/MustSatisfySpecificationFacetFactoryProcessPropertyTest.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/propparam/specification/MustSatisfySpecificationFacetFactoryProcessPropertyTest.java?rev=1059826&r1=1059825&r2=1059826&view=diff
==============================================================================
--- incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/propparam/specification/MustSatisfySpecificationFacetFactoryProcessPropertyTest.java (original)
+++ incubator/isis/trunk/core/progmodel/src/test/java/org/apache/isis/core/progmodel/facets/propparam/specification/MustSatisfySpecificationFacetFactoryProcessPropertyTest.java Mon Jan 17 09:26:54 2011
@@ -34,8 +34,9 @@ import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
-import org.apache.isis.core.metamodel.facetapi.FacetHolder;
import org.apache.isis.core.metamodel.facetapi.MethodRemover;
+import org.apache.isis.core.metamodel.facets.FacetedMethod;
+import org.apache.isis.core.metamodel.facets.FacetFactory.ProcessMethodContext;
@RunWith(JMock.class)
public class MustSatisfySpecificationFacetFactoryProcessPropertyTest {
@@ -48,7 +49,7 @@ public class MustSatisfySpecificationFac
private MustSatisfySpecificationFacetFactory facetFactory;
private MethodRemover mockMethodRemover;
- private FacetHolder mockFacetHolder;
+ private FacetedMethod mockFacetHolder;
private Class<DomainObjectWithoutMustSatisfyAnnotations> domainObjectClassWithoutAnnotation;
private Class<DomainObjectWithMustSatisfyAnnotations> domainObjectClassWithAnnotation;
@@ -59,7 +60,7 @@ public class MustSatisfySpecificationFac
public void setUp() throws Exception {
facetFactory = new MustSatisfySpecificationFacetFactory();
mockMethodRemover = mockery.mock(MethodRemover.class);
- mockFacetHolder = mockery.mock(FacetHolder.class);
+ mockFacetHolder = mockery.mock(FacetedMethod.class);
domainObjectClassWithoutAnnotation = DomainObjectWithoutMustSatisfyAnnotations.class;
domainObjectClassWithAnnotation = DomainObjectWithMustSatisfyAnnotations.class;
firstNameMethodWithout = domainObjectClassWithoutAnnotation.getMethod("getFirstName");
@@ -78,7 +79,7 @@ public class MustSatisfySpecificationFac
mockery.checking(new Expectations() {{
one(mockFacetHolder).addFacet(with(anInstanceOf(MustSatisfySpecificationFacet.class)));
}});
- facetFactory.process(domainObjectClassWithAnnotation.getClass(), firstNameMethodWith, mockMethodRemover, mockFacetHolder);
+ facetFactory.process(new ProcessMethodContext(domainObjectClassWithAnnotation.getClass(), firstNameMethodWith, mockMethodRemover, mockFacetHolder));
}
@Test
@@ -86,7 +87,7 @@ public class MustSatisfySpecificationFac
mockery.checking(new Expectations() {{
never(mockFacetHolder).addFacet(with(anInstanceOf(MustSatisfySpecificationFacet.class)));
}});
- facetFactory.process(domainObjectClassWithAnnotation.getClass(), firstNameMethodWithout, mockMethodRemover, mockFacetHolder);
+ facetFactory.process(new ProcessMethodContext(domainObjectClassWithAnnotation.getClass(), firstNameMethodWithout, mockMethodRemover, mockFacetHolder));
}
}