1
2
3
4
5
6 package fr.paris.lutece.plugins.adminsql.business;
7
8
9 import fr.paris.lutece.portal.service.database.PluginConnectionService;
10 import fr.paris.lutece.portal.service.plugin.Plugin;
11 import fr.paris.lutece.portal.service.plugin.PluginService;
12 import fr.paris.lutece.test.LuteceTestCase;
13 import java.util.ArrayList;
14 import java.util.List;
15
16
17
18
19
20 public class AdminSqlBusinessTest extends LuteceTestCase {
21
22 private final static String POOL_PORTAL = "portal";
23 private final static String TABLE_NAME_MODIFY = "bibibibi";
24 private final static String FIELD_NAME_1 = "FIELD_NAME_1";
25 private final static String FIELD_NAME_2 = "FIELD_NAME_2";
26 private final static String DATA_1 = "1";
27 private final static String DATA_1_updated = "2";
28 private final static String DATA_2 = "2";
29 private final static String DATA_2_updated = "3";
30 private static final int ID_FIELD_TYPE = 7;
31 private final static String LENGTH_FIELD_TYPE = "8";
32 private static final int ID_KEY_VALUE = 1;
33
34 private static final int ID_NULL_VALUE = 1;
35 private static final String DEFAULT_VALUE = "";
36
37
38 private static final String MODIFY_FIELD_NAME = "TestFieldName";
39 private static final int MODIFY_ID_FIELD_TYPE = 7;
40 private static final String MODIFY_LENGTH_TYPE_VALUE = "7";
41 private static final int MODIFY_ID_KEY_VALUE = 1;
42 private static final int MODIFY_ID_NULL_VALUE = 1;
43 private static final String MODIFY_DEFAULT_VALUE = "1";
44
45
46 private static String REQUEST = "SELECT * from ";
47
48
49
50
51
52
53
54
55
56
57
58 public void testAdminSqlBusiness( )
59 {
60 Plugin plugin = PluginService.getPlugin( "adminsql" );
61 plugin.setPoolName(POOL_PORTAL);
62
63 PluginConnectionService connectionService = new PluginConnectionService( plugin.getDbPoolName( ) );
64
65
66 if ( ( plugin != null ) && plugin.isInstalled( ) )
67 {
68 Table table = new Table( );
69 table.setTableName("bibi");
70
71 Field field = new Field();
72 field.setFieldName( FIELD_NAME_1 );
73 field.setIdTypeValue( ID_FIELD_TYPE );
74 field.setLengthTypeValue( LENGTH_FIELD_TYPE );
75 field.setIdKeyValue( ID_KEY_VALUE );
76 field.setIdNullValue( ID_NULL_VALUE );
77 field.setDefaultValue( DEFAULT_VALUE );
78
79 String strTableName = table.getTableName( );
80
81 TableHome.create( POOL_PORTAL , table, field, plugin);
82
83 Table tableStored = TableHome.findByPrimaryKey(POOL_PORTAL, strTableName, plugin);
84 Field fieldStored = FieldHome.findByPrimaryKey(POOL_PORTAL, strTableName, FIELD_NAME_1, plugin );
85
86 assertEquals( table.getTableName( ), tableStored.getTableName( ) );
87 assertEquals( field.getFieldName( ), fieldStored.getFieldName( ) );
88 assertEquals( field.getIdTypeValue(), fieldStored.getIdTypeValue( ) );
89 assertEquals( field.getLengthTypeValue( ), fieldStored.getLengthTypeValue( ) );
90 assertEquals( field.getIdKeyValue( ), fieldStored.getIdKeyValue( ) );
91 assertEquals( field.getIdNullValue( ), fieldStored.getIdNullValue( ) );
92 assertEquals( field.getDefaultValue( ), fieldStored.getDefaultValue( ) );
93
94 Field field_2 = new Field();
95 field_2.setFieldName( FIELD_NAME_2 );
96 field_2.setIdTypeValue( ID_FIELD_TYPE );
97 field_2.setLengthTypeValue( LENGTH_FIELD_TYPE );
98 field_2.setIdKeyValue( ID_KEY_VALUE );
99 field_2.setIdNullValue( ID_NULL_VALUE );
100 field_2.setDefaultValue( DEFAULT_VALUE );
101
102 FieldHome.create(POOL_PORTAL, strTableName, field_2, plugin);
103
104 System.out.println("insert data");
105 List<String> listData = new ArrayList( );
106 listData.add(DATA_1);
107 listData.add(DATA_2);
108 List<String> listFields = new ArrayList( );
109 listFields.add( FIELD_NAME_1 );
110 listFields.add( FIELD_NAME_2 );
111
112 DataHome.create(POOL_PORTAL, strTableName, listData, listFields, connectionService);
113
114 System.out.println("update Table");
115 Table table_1 = new Table( );
116 table_1.setTableName(strTableName);
117 TableHome.update(TABLE_NAME_MODIFY, table);
118 tableStored = TableHome.findByPrimaryKey(POOL_PORTAL, TABLE_NAME_MODIFY, plugin);
119 assertEquals( TABLE_NAME_MODIFY, tableStored.getTableName( ) );
120
121 System.out.println("update Field");
122 Field fieldToModify = FieldHome.findByPrimaryKey( POOL_PORTAL, TABLE_NAME_MODIFY, FIELD_NAME_2, plugin );
123 fieldToModify.setFieldName( MODIFY_FIELD_NAME );
124 fieldToModify.setIdTypeValue( MODIFY_ID_FIELD_TYPE );
125 fieldToModify.setLengthTypeValue( MODIFY_LENGTH_TYPE_VALUE );
126 fieldToModify.setIdKeyValue( MODIFY_ID_KEY_VALUE );
127 fieldToModify.setIdNullValue( MODIFY_ID_NULL_VALUE );
128 fieldToModify.setDefaultValue( MODIFY_DEFAULT_VALUE );
129 FieldHome.update( POOL_PORTAL, TABLE_NAME_MODIFY, fieldToModify, FIELD_NAME_2, ID_KEY_VALUE, plugin );
130 assertEquals( fieldToModify.getFieldName( ), MODIFY_FIELD_NAME );
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146 System.out.println("find all in user request");
147 REQUEST += TABLE_NAME_MODIFY;
148 assertNotNull( DataHome.findAllInUserRequest( POOL_PORTAL, REQUEST, connectionService ) );
149
150
151
152
153
154
155 System.out.println("delete Field");
156 FieldHome.remove( TABLE_NAME_MODIFY, MODIFY_FIELD_NAME, plugin );
157
158 System.out.println("delete Table");
159 TableHome.remove( TABLE_NAME_MODIFY, plugin );
160 }
161 }
162 }