Revision 44926 trunk/org.gvsig.desktop/org.gvsig.desktop.compat.cdc/org.gvsig.fmap.dal/org.gvsig.fmap.dal.file/org.gvsig.fmap.dal.file.dbf/src/test/java/org/gvsig/fmap/dal/store/dbf/TestCreate.java

View differences:

TestCreate.java
3 3
import java.io.File;
4 4
import java.util.List;
5 5
import junit.framework.TestCase;
6
import org.apache.commons.io.FileUtils;
6 7
import org.apache.commons.lang3.StringUtils;
7 8
import org.gvsig.fmap.dal.DALLocator;
8 9
import org.gvsig.fmap.dal.DataManager;
......
52 53
    protected FeatureStore openTargetStore1() throws Exception {
53 54
        DataManager dataManager = DALLocator.getDataManager();
54 55
        File f = TestUtils.getResource(getTargetFilename());
56
        FileUtils.forceMkdir(f.getParentFile());
55 57
        FeatureStore store = (FeatureStore) dataManager.openStore(
56 58
                getProviderName(), 
57 59
                "DbfFile",f
......
60 62
    }
61 63

  
62 64
    protected void createFrom(FeatureStore sourceStore) throws Exception {
65
        File folder = TestUtils.getTargetFolder();
66
        FileUtils.forceMkdir(folder.getParentFile());
67

  
63 68
        DataManager dataManager = DALLocator.getDataManager();
64 69
        DataServerExplorer explorer = dataManager.openServerExplorer(
65 70
                DataServerExplorer.FILESYSTEM_SERVER_EXPLORER_NAME, 
66
                "root", TestUtils.getTargetFolder()
71
                "root", folder
67 72
        );
68 73
        
69 74
        NewFeatureStoreParameters params = (NewFeatureStoreParameters) explorer.getAddParameters(
......
130 135
                    );
131 136
                    break;
132 137
                case DataTypes.DECIMAL:
138
                    if( useDalFile ) {
139
                      assertEquals(
140
                              String.format("Field %s type mismatch", sourceAttr.getName()), 
141
                              sourceAttr.getDataTypeName(), 
142
                              targetAttr.getDataTypeName()
143
                      );
144
                      assertEquals(
145
                              String.format("Field %s precision mismatch", sourceAttr.getName()), 
146
                              sourceAttr.getPrecision(),
147
                              targetAttr.getPrecision() 
148
                      );
149
                    } else {
150
                      assertEquals(
151
                              String.format("Field %s type mismatch", sourceAttr.getName()), 
152
                              sourceAttr.getScale()==0?"Integer":sourceAttr.getDataTypeName(), 
153
                              targetAttr.getDataTypeName()
154
                      );
155
//                      assertEquals(
156
//                              String.format("Field %s precision mismatch", sourceAttr.getName()), 
157
//                              sourceAttr.getPrecision(),
158
//                              targetAttr.getPrecision() 
159
//                      );
160
                    }
133 161
                    assertEquals(
134
                            String.format("Field %s type mismatch", sourceAttr.getName()), 
135
                            sourceAttr.getDataTypeName(), 
136
                            targetAttr.getDataTypeName()
137
                    );
138
                    assertEquals(
139 162
                            String.format("Field %s size mismatch", sourceAttr.getName()), 
140 163
                            sourceAttr.getSize(),
141 164
                            targetAttr.getSize()
142 165
                    );
143 166
                    assertEquals(
144
                            String.format("Field %s precision mismatch", sourceAttr.getName()), 
145
                            useDalFile?sourceAttr.getPrecision():sourceAttr.getPrecision()+1,
146
                            targetAttr.getPrecision() 
147
                    );
148
                    assertEquals(
149 167
                            String.format("Field %s scale mismatch", sourceAttr.getName()), 
150 168
                            sourceAttr.getScale(),
151 169
                            targetAttr.getScale()
......
153 171
                    break;
154 172

  
155 173
                case DataTypes.BYTE:
174
                    if( useDalFile ) {
175
                      assertEquals(
176
                              String.format("Field %s type mismatch", sourceAttr.getName()), 
177
                              sourceAttr.getDataTypeName(),  
178
                              targetAttr.getDataTypeName()
179
                      );
180
                    } else {
181
                      assertEquals(
182
                              String.format("Field %s type mismatch", sourceAttr.getName()), 
183
                              DataTypes.DECIMAL_NAME,  
184
                              targetAttr.getDataTypeName()
185
                      );
186
                    }
156 187
                    assertEquals(
157
                            String.format("Field %s type mismatch", sourceAttr.getName()), 
158
                            useDalFile?sourceAttr.getDataTypeName():DataTypes.DECIMAL_NAME,  
159
                            targetAttr.getDataTypeName()
160
                    );
161
                    assertEquals(
162 188
                            String.format("Field %s size mismatch", sourceAttr.getName()), 
163 189
                            sourceAttr.getSize(),
164 190
                            targetAttr.getSize()
......
175 201
                    );
176 202
                    break;
177 203
                  
204
                case DataTypes.DOUBLE:
205
                case DataTypes.FLOAT:
206
                  break;
178 207
                case DataTypes.INT:
179 208
                case DataTypes.LONG:
180 209
                case DataTypes.BOOLEAN:
181 210
                case DataTypes.DATE:
182 211
                case DataTypes.STRING:
183
                case DataTypes.DOUBLE:
184
                case DataTypes.FLOAT:
185 212
                    assertEquals(
186 213
                            String.format("Field %s type mismatch", sourceAttr.getName()), 
187 214
                            sourceAttr.getDataTypeName(), 
......
266 293
                                DataTypeUtils.coerce(DataTypes.BYTE, targetFeature.get(sourceAttr.getName()),null)
267 294
                        );
268 295
                        break;
296
                    case DataTypes.DECIMAL:
297
                        assertEquals(
298
                                String.format("Feature %03d attribute %s", i, sourceAttr.getName()),
299
                                sourceFeature.get(sourceAttr.getName()),
300
                                targetFeature.getDecimal(sourceAttr.getName())
301
                        );
302
                        break;
269 303
                    default:
270 304
                        assertEquals(
271 305
                                String.format("Feature %03d attribute %s (%s/%s)", i, sourceAttr.getName(), sourceAttr.getDataType().getName(), targetAttr.getDataType().getName() ),

Also available in: Unified diff