View Javadoc
1   /*
2    * FormHomeTest.java
3    * JUnit based test
4    *
5    * Created on 20 novembre 2007, 10:06
6    */
7   package fr.paris.lutece.plugins.form.business;
8   
9   import fr.paris.lutece.portal.service.plugin.Plugin;
10  import fr.paris.lutece.portal.service.plugin.PluginService;
11  import fr.paris.lutece.test.LuteceTestCase;
12  
13  import java.sql.Timestamp;
14  
15  import java.util.Date;
16  import java.util.List;
17  
18  
19  /**
20   *
21   * @author jSteve
22   */
23  public class FormHomeTest extends LuteceTestCase
24  {
25      private final static int ID_1 = 1;
26      private final static int ID_2 = 2;
27      private final static String TITLE_1 = "Title 1";
28      private final static String TITLE_2 = "Title 2";
29      private final static String DESCRIPTION_1 = "Description 1";
30      private final static String DESCRIPTION_2 = "Description 2";
31      private final static String WELCOME_MESSAGE_1 = "Welcome Message 1";
32      private final static String WELCOME_MESSAGE_2 = "Welcome Message 2";
33      private final static String UNAVAILABILITY_MESSAGE_1 = "Unavailability Message 1";
34      private final static String UNAVAILABILITY_MESSAGE_2 = "Unavailability Message 2";
35      private final static String REQUIREMENT_1 = "Requirement 1";
36      private final static String REQUIREMENT_2 = "Requirement 2";
37      private final static String WORKGROUP_1 = "Workgroup 1";
38      private final static String WORKGROUP_2 = "Workgroup 2";
39      private final static int ID_MAILING_LIST_1 = 1;
40      private final static int ID_MAILING_LIST_2 = 2;
41      private final static boolean ACTIVE_CAPTCHA_1 = true;
42      private final static boolean ACTIVE_CAPTCHA_2 = false;
43      private final static boolean ACTIVE_STORE_ADRESSE_1 = true;
44      private final static boolean ACTIVE_STORE_ADRESSE_2 = false;
45      private final static String VALIDATE_BUTTON_1 = "Button Validate 1";
46      private final static String VALIDATE_BUTTON_2 = "Button Validate 2";
47      private final static String RESET_BUTTON_1 = "Button Reset 1";
48      private final static String RESET_BUTTON_2 = "Button Reset 2";
49      private final static Date DATE_BEGIN_DISPONIBILITY_1 = new Date(  );
50      private final static Date DATE_BEGIN_DISPONIBILITY_2 = new Date(  );
51      private final static Date DATE_END_DISPONIBILITY_1 = new Date(  );
52      private final static Date DATE_END_DISPONIBILITY_2 = new Date(  );
53      private final static boolean AUTO_PUBLICATION_ACTIVE_1 = true;
54      private final static boolean AUTO_PUBLICATION_ACTIVE_2 = false;
55      private final static boolean ACTIVE_1 = true;
56      private final static boolean ACTIVE_2 = false;
57      private final static Timestamp DATE_CREATION_1 = new Timestamp( new Date(  ).getTime(  ) );
58      private final static Timestamp DATE_CREATION_2 = new Timestamp( new Date(  ).getTime(  ) );
59      private final static boolean LIMIT_NUMBER_RESPONSE_1 = true;
60      private final static boolean LIMIT_NUMBER_RESPONSE_2 = false;
61      private final static int ID_RECAP_1 = 1;
62      private final static int ID_RECAP_2 = 2;
63      private final Plugin _plugin = PluginService.getPlugin( "form" );
64  
65      /**
66       * Test of create method, of class fr.paris.lutece.plugins.form.business.FormHome.
67       */
68      public void testCreate(  )
69      {
70          Form form = new Form(  );
71          form.setTitle( TITLE_1 );
72          form.setDescription( DESCRIPTION_1 );
73          form.setWelcomeMessage( WELCOME_MESSAGE_1 );
74          form.setUnavailabilityMessage( UNAVAILABILITY_MESSAGE_1 );
75          form.setRequirement( REQUIREMENT_1 );
76          form.setWorkgroup( WORKGROUP_1 );
77          form.setIdMailingList( ID_MAILING_LIST_1 );
78          form.setActiveCaptcha( ACTIVE_CAPTCHA_1 );
79          form.setActiveStoreAdresse( ACTIVE_STORE_ADRESSE_1 );
80          form.setLibelleValidateButton( VALIDATE_BUTTON_1 );
81          form.setLibelleResetButton( RESET_BUTTON_1 );
82          form.setDateBeginDisponibility( DATE_BEGIN_DISPONIBILITY_1 );
83          form.setDateEndDisponibility( DATE_END_DISPONIBILITY_1 );
84          form.setActive( ACTIVE_1 );
85          form.setAutoPublicationActive( AUTO_PUBLICATION_ACTIVE_1 );
86          form.setDateCreation( DATE_CREATION_1 );
87          form.setLimitNumberResponse( LIMIT_NUMBER_RESPONSE_1 );
88  
89          Recap recap = new Recap(  );
90          recap.setIdRecap( RecapHome.create( recap, _plugin ) );
91          form.setRecap( recap );
92          FormHome.create( form, _plugin );
93  
94          Form storedForm = FormHome.findByPrimaryKey( form.getIdForm(  ), _plugin );
95  
96          assertEquals( storedForm.getIdForm(  ), form.getIdForm(  ) );
97          assertEquals( storedForm.getTitle(  ), form.getTitle(  ) );
98          assertEquals( storedForm.getDescription(  ), form.getDescription(  ) );
99          assertEquals( storedForm.getWelcomeMessage(  ), form.getWelcomeMessage(  ) );
100         assertEquals( storedForm.getUnavailabilityMessage(  ), form.getUnavailabilityMessage(  ) );
101         assertEquals( storedForm.getRequirement(  ), form.getRequirement(  ) );
102         assertEquals( storedForm.getWorkgroup(  ), form.getWorkgroup(  ) );
103         assertEquals( storedForm.getIdMailingList(  ), form.getIdMailingList(  ) );
104         assertEquals( storedForm.isActiveCaptcha(  ), form.isActiveCaptcha(  ) );
105         assertEquals( storedForm.isActiveStoreAdresse(  ), form.isActiveStoreAdresse(  ) );
106         assertEquals( storedForm.getLibelleValidateButton(  ), form.getLibelleValidateButton(  ) );
107         assertTrue( ( storedForm.getDateEndDisponibility(  ).getTime(  ) -
108             form.getDateEndDisponibility(  ).getTime(  ) ) < 10 );
109         assertEquals( storedForm.isAutoPublicationActive(  ), form.isAutoPublicationActive(  ) );
110         assertEquals( storedForm.isActive(  ), form.isActive(  ) );
111 
112         assertEquals( storedForm.isLimitNumberResponse(  ), form.isLimitNumberResponse(  ) );
113 
114         assertEquals( storedForm.getRecap(  ).getIdRecap(  ), form.getRecap(  ).getIdRecap(  ) );
115     }
116 
117     /**
118      * Test of copy method, of class fr.paris.lutece.plugins.form.business.FormHome.
119      */
120     public void testCopy(  )
121     {
122         Form loadForm = FormHome.findByPrimaryKey( ID_2, _plugin );
123 
124         FormHome.copy( loadForm, _plugin );
125 
126         FormDAO formDAO = new FormDAO(  );
127         int LastPrimaryKey = formDAO.newPrimaryKey( _plugin ) - 1;
128         Form copyForm = FormHome.findByPrimaryKey( LastPrimaryKey, _plugin );
129 
130         assertEquals( copyForm.getTitle(  ), loadForm.getTitle(  ) );
131         assertEquals( copyForm.getDescription(  ), loadForm.getDescription(  ) );
132         assertEquals( copyForm.getWelcomeMessage(  ), loadForm.getWelcomeMessage(  ) );
133         assertEquals( copyForm.getUnavailabilityMessage(  ), loadForm.getUnavailabilityMessage(  ) );
134         assertEquals( copyForm.getRequirement(  ), loadForm.getRequirement(  ) );
135         assertEquals( copyForm.getWorkgroup(  ), loadForm.getWorkgroup(  ) );
136         assertEquals( copyForm.getIdMailingList(  ), loadForm.getIdMailingList(  ) );
137         assertEquals( copyForm.isActiveCaptcha(  ), loadForm.isActiveCaptcha(  ) );
138         assertEquals( copyForm.isActiveStoreAdresse(  ), loadForm.isActiveStoreAdresse(  ) );
139         assertEquals( copyForm.getLibelleValidateButton(  ), loadForm.getLibelleValidateButton(  ) );
140         assertEquals( copyForm.getLibelleResetButton(  ), loadForm.getLibelleResetButton(  ) );
141         assertTrue( ( copyForm.getDateBeginDisponibility(  ).getTime(  ) -
142             loadForm.getDateBeginDisponibility(  ).getTime(  ) ) < 10 );
143         assertTrue( ( copyForm.getDateEndDisponibility(  ).getTime(  ) -
144             loadForm.getDateEndDisponibility(  ).getTime(  ) ) < 10 );
145         assertEquals( copyForm.isActive(  ), loadForm.isActive(  ) );
146         assertEquals( copyForm.isLimitNumberResponse(  ), loadForm.isLimitNumberResponse(  ) );
147 
148         assertEquals( copyForm.getRecap(  ).getIdRecap(  ), loadForm.getRecap(  ).getIdRecap(  ) );
149     }
150 
151     /**
152      * Test of update method, of class fr.paris.lutece.plugins.form.business.FormHome.
153      */
154     public void testUpdate(  )
155     {
156         FormDAO formDAO = new FormDAO(  );
157         int LastPrimaryKey = formDAO.newPrimaryKey( _plugin ) - 1;
158         Form loadForm = FormHome.findByPrimaryKey( LastPrimaryKey, _plugin );
159 
160         Form form = new Form(  );
161         form.setIdForm( loadForm.getIdForm(  ) );
162         form.setTitle( TITLE_2 );
163         form.setDescription( DESCRIPTION_2 );
164         form.setWelcomeMessage( WELCOME_MESSAGE_2 );
165         form.setUnavailabilityMessage( UNAVAILABILITY_MESSAGE_2 );
166         form.setRequirement( REQUIREMENT_2 );
167         form.setWorkgroup( WORKGROUP_2 );
168         form.setIdMailingList( ID_MAILING_LIST_2 );
169         form.setActiveCaptcha( ACTIVE_CAPTCHA_2 );
170         form.setActiveStoreAdresse( ACTIVE_STORE_ADRESSE_2 );
171         form.setLibelleValidateButton( VALIDATE_BUTTON_2 );
172         form.setLibelleValidateButton( RESET_BUTTON_2 );
173         form.setDateBeginDisponibility( DATE_BEGIN_DISPONIBILITY_2 );
174         form.setDateEndDisponibility( DATE_END_DISPONIBILITY_2 );
175         form.setActive( ACTIVE_2 );
176         form.setAutoPublicationActive( AUTO_PUBLICATION_ACTIVE_2 );
177         form.setDateCreation( DATE_CREATION_2 );
178         form.setLimitNumberResponse( LIMIT_NUMBER_RESPONSE_2 );
179 
180         Recap recap = new Recap(  );
181         recap.setIdRecap( loadForm.getRecap(  ).getIdRecap(  ) );
182         form.setRecap( recap );
183 
184         FormHome.update( form, _plugin );
185 
186         Form storedForm = FormHome.findByPrimaryKey( form.getIdForm(  ), _plugin );
187 
188         assertEquals( storedForm.getIdForm(  ), form.getIdForm(  ) );
189         assertEquals( storedForm.getTitle(  ), form.getTitle(  ) );
190         assertEquals( storedForm.getDescription(  ), form.getDescription(  ) );
191         assertEquals( storedForm.getWelcomeMessage(  ), form.getWelcomeMessage(  ) );
192         assertEquals( storedForm.getUnavailabilityMessage(  ), form.getUnavailabilityMessage(  ) );
193         assertEquals( storedForm.getRequirement(  ), form.getRequirement(  ) );
194         assertEquals( storedForm.getWorkgroup(  ), form.getWorkgroup(  ) );
195         assertEquals( storedForm.getIdMailingList(  ), form.getIdMailingList(  ) );
196         assertEquals( storedForm.isActiveCaptcha(  ), form.isActiveCaptcha(  ) );
197         assertEquals( storedForm.isActiveStoreAdresse(  ), form.isActiveStoreAdresse(  ) );
198         assertEquals( storedForm.getLibelleValidateButton(  ), form.getLibelleValidateButton(  ) );
199         assertTrue( ( storedForm.getDateBeginDisponibility(  ).getTime(  ) -
200             form.getDateBeginDisponibility(  ).getTime(  ) ) < 10 );
201         assertTrue( ( storedForm.getDateEndDisponibility(  ).getTime(  ) -
202             form.getDateEndDisponibility(  ).getTime(  ) ) < 10 );
203         assertEquals( storedForm.isAutoPublicationActive(  ), form.isAutoPublicationActive(  ) );
204         assertEquals( storedForm.isActive(  ), form.isActive(  ) );
205 
206         assertEquals( storedForm.isLimitNumberResponse(  ), form.isLimitNumberResponse(  ) );
207 
208         assertEquals( storedForm.getRecap(  ).getIdRecap(  ), form.getRecap(  ).getIdRecap(  ) );
209     }
210 
211     /**
212      * Test of getFormList method, of class fr.paris.lutece.plugins.form.business.FormHome.
213      */
214     public void testGetFormList(  )
215     {
216         List<Form> storedListForm = null;
217 
218         FormFilter formFilter = new FormFilter(  );
219 
220         storedListForm = FormHome.getFormList( formFilter, _plugin );
221 
222         assertNotNull( storedListForm );
223     }
224 
225     /**
226      * Test of remove method, of class fr.paris.lutece.plugins.form.business.FormHome.
227      */
228     public void testRemove(  )
229     {
230         FormDAO formDAO = new FormDAO(  );
231         int LastPrimaryKey = formDAO.newPrimaryKey( _plugin ) - 1;
232         Form loadForm = FormHome.findByPrimaryKey( LastPrimaryKey, _plugin );
233 
234         FormHome.remove( loadForm.getIdForm(  ), _plugin );
235 
236         Form formStored = FormHome.findByPrimaryKey( loadForm.getIdForm(  ), _plugin );
237         assertNull( formStored );
238     }
239 }