1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.myfaces.config.annotation;
18
19 import org.apache.myfaces.config.ManagedBeanBuilder;
20 import org.apache.myfaces.config.impl.digester.elements.ManagedBeanImpl;
21 import org.apache.myfaces.config.impl.digester.elements.ManagedPropertyImpl;
22 import org.apache.myfaces.test.base.AbstractJsfTestCase;
23
24
25
26
27
28
29
30 public class Myfaces1761TestCase extends AbstractJsfTestCase
31 {
32
33 protected ManagedBeanBuilder managedBeanBuilder;
34 protected LifecycleProvider2 lifecycleProvider;
35 protected ManagedBeanImpl beanConfiguration;
36
37 private static final String TEST_LIFECYCLE_PROVIDER = MockLifecycleProvider2.class.getName();
38
39 protected static final String INJECTED_VALUE = "tatiana";
40
41 public Myfaces1761TestCase(String name)
42 {
43 super(name);
44 }
45
46 protected void setUp() throws Exception
47 {
48 super.setUp();
49 managedBeanBuilder = new ManagedBeanBuilder();
50
51 beanConfiguration = new ManagedBeanImpl();
52 beanConfiguration.setBeanClass(AnnotatedManagedBean2.class.getName());
53 beanConfiguration.setName("managed");
54 beanConfiguration.setScope("request");
55
56 ManagedPropertyImpl managedProperty = new ManagedPropertyImpl();
57 managedProperty.setPropertyName("managedProperty");
58 managedProperty.setValue(INJECTED_VALUE);
59 beanConfiguration.addProperty(managedProperty);
60
61 LifecycleProviderFactory.getLifecycleProviderFactory(externalContext).release();
62 servletContext.addInitParameter(DefaultLifecycleProviderFactory.LIFECYCLE_PROVIDER, TEST_LIFECYCLE_PROVIDER);
63 }
64
65 public void tearDown() throws Exception
66 {
67 LifecycleProviderFactory.getLifecycleProviderFactory(externalContext).release();
68 super.tearDown();
69 managedBeanBuilder = null;
70 }
71
72 public void testPostConstruct() throws Exception
73 {
74 AnnotatedManagedBean2 bean = (AnnotatedManagedBean2) managedBeanBuilder.buildManagedBean(facesContext, beanConfiguration);
75 assertEquals(INJECTED_VALUE, bean.getManagedProperty());
76 assertTrue(bean.isPostConstructCalled());
77 }
78 }