@Test public void testNamedAnnotationPickedUpOnClass() { final NamedFacetOnTypeAnnotationFactory facetFactory = new NamedFacetOnTypeAnnotationFactory(); @Named("some name") class Customer { } expectNoMethodsRemoved(); facetFactory.process(new ProcessClassContext(Customer.class, null, mockMethodRemover, facetedMethod)); final Facet facet = facetedMethod.getFacet(NamedFacet.class); assertThat(facet, is(not(nullValue()))); assertThat(facet instanceof NamedFacetAbstract, is(true)); final NamedFacetAbstract namedFacetAbstract = (NamedFacetAbstract) facet; assertThat(namedFacetAbstract.value(), equalTo("some name")); }
public void testNamedAnnotationPickedUpOnAction() { final NamedFacetOnMemberFactory facetFactory = new NamedFacetOnMemberFactory(); class Customer { @SuppressWarnings("unused") @Named("some name") public void someAction() { } } final Method actionMethod = findMethod(Customer.class, "someAction"); expectNoMethodsRemoved(); facetFactory.process(new ProcessMethodContext(Customer.class, null, null, actionMethod, mockMethodRemover, facetedMethod)); final Facet facet = facetedMethod.getFacet(NamedFacet.class); assertThat(facet, is(not(nullValue()))); assertThat(facet instanceof NamedFacetAbstract, is(true)); final NamedFacetAbstract namedFacetAbstract = (NamedFacetAbstract) facet; assertThat(namedFacetAbstract.value(), equalTo("some name")); }
public void testNamedAnnotationPickedUpOnCollection() { final NamedFacetOnMemberFactory facetFactory = new NamedFacetOnMemberFactory(); class Customer { @SuppressWarnings("unused") @Named("some name") public Collection<?> getOrders() { return null; } } final Method actionMethod = findMethod(Customer.class, "getOrders"); expectNoMethodsRemoved(); facetFactory.process(new ProcessMethodContext(Customer.class, null, null, actionMethod, mockMethodRemover, facetedMethod)); final Facet facet = facetedMethod.getFacet(NamedFacet.class); assertThat(facet, is(not(nullValue()))); assertThat(facet instanceof NamedFacetAbstract, is(true)); final NamedFacetAbstract namedFacetAbstract = (NamedFacetAbstract) facet; assertThat(namedFacetAbstract.value(), equalTo("some name")); }
public void testNamedAnnotationPickedUpOnActionParameter() { final NamedFacetOnParameterAnnotationFactory facetFactory = new NamedFacetOnParameterAnnotationFactory(); class Customer { @SuppressWarnings("unused") public void someAction(@Named("some name") final int x) { } } final Method actionMethod = findMethod(Customer.class, "someAction", new Class[] { int.class }); expectNoMethodsRemoved(); facetFactory.processParams(new ProcessParameterContext(Customer.class, actionMethod, 0, null, facetedMethodParameter)); final Facet facet = facetedMethodParameter.getFacet(NamedFacet.class); assertThat(facet, is(not(nullValue()))); assertThat(facet instanceof NamedFacetAbstract, is(true)); final NamedFacetAbstract namedFacetAbstract = (NamedFacetAbstract) facet; assertThat(namedFacetAbstract.value(), equalTo("some name")); }
@Test public void testNamedAnnotationPickedUpOnProperty() { final NamedFacetOnMemberFactory facetFactory = new NamedFacetOnMemberFactory(); class Customer { @SuppressWarnings("unused") @Named("some name") public int getNumberOfOrders() { return 0; } } final Method actionMethod = findMethod(Customer.class, "getNumberOfOrders"); expectNoMethodsRemoved(); facetFactory.process(new ProcessMethodContext(Customer.class, null, null, actionMethod, mockMethodRemover, facetedMethod)); final Facet facet = facetedMethod.getFacet(NamedFacet.class); assertThat(facet, is(not(nullValue()))); assertThat(facet instanceof NamedFacetAbstract, is(true)); final NamedFacetAbstract namedFacetAbstract = (NamedFacetAbstract) facet; assertThat(namedFacetAbstract.value(), equalTo("some name")); }
public void testInstallsNamedFacetUsingNameMethodAndRemovesMethod() { final NamedFacetStaticMethodFactory facetFactory = new NamedFacetStaticMethodFactory(); facetFactory.setServicesInjector(mockServicesInjector); // mockSpecificationLoader.setLoadSpecificationStringReturn(voidSpec); allowing_specificationLoader_loadSpecification_any_willReturn(this.voidSpec); final Method actionMethod = findMethod(CustomerStatic.class, "someAction", new Class[] { int.class, Long.class }); final Method nameMethod = findMethod(CustomerStatic.class, "nameSomeAction"); facetFactory.process(new ProcessMethodContext(CustomerStatic.class, null, null, actionMethod, methodRemover, facetedMethod)); final Facet facet = facetedMethod.getFacet(NamedFacet.class); assertNotNull(facet); assertTrue(facet instanceof NamedFacetAbstract); final NamedFacetAbstract namedFacetAbstract = (NamedFacetAbstract) facet; assertEquals("Another Name", namedFacetAbstract.value()); assertTrue(methodRemover.getRemovedMethodMethodCalls().contains(nameMethod)); }