@Ignore @Test public void testSaveAndLoad() throws Exception { EList list = project.eResource().getResourceSet().getResources(); for (Iterator iter = list.iterator(); iter.hasNext(); ) { Resource element = (Resource) iter.next(); try { element.save(null); } catch (Exception e) { } if (!element.getContents().contains(ProjectPlugin.getPlugin().getProjectRegistry())) element.unload(); } ResourceSet set = new ResourceSetImpl(); Project project = (Project) set.getResource(URI.createURI("file://" + file.getAbsolutePath()), true) .getAllContents() .next(); //$NON-NLS-1$ assertFalse(project.eIsProxy()); assertNotNull(project); int maps = 0; boolean foundFirstMap = false; boolean foundSecondMap = false; List resources = project.getElements(); for (Iterator iter = resources.iterator(); iter.hasNext(); ) { Map map = (Map) iter.next(); assertFalse(map.eIsProxy()); assertEquals(1, map.getLayersInternal().size()); assertNotNull(map.getLayersInternal().get(0).getGeoResources().get(0)); assertNotNull( map.getLayersInternal() .get(0) .getResource(FeatureSource.class, new NullProgressMonitor())); if (map.getName().equals(firstMapName)) { foundFirstMap = true; assertEquals(firstMapLayerName, map.getLayersInternal().get(0).getName()); FeatureSource<SimpleFeatureType, SimpleFeature> source = map.getLayersInternal().get(0).getResource(FeatureSource.class, null); assertEquals(4, source.getCount(Query.ALL)); assertEquals(firstMapLayerName, map.getLayersInternal().get(0).getName()); } if (map.getName().equals(secondMapName)) { foundSecondMap = true; assertEquals(secondMapLayerName, map.getLayersInternal().get(0).getName()); FeatureSource<SimpleFeatureType, SimpleFeature> source = map.getLayersInternal().get(0).getResource(FeatureSource.class, null); assertEquals(6, source.getCount(Query.ALL)); assertEquals(secondMapLayerName, map.getLayersInternal().get(0).getName()); } maps++; } assertEquals(2, maps); assertTrue(foundFirstMap); assertTrue(foundSecondMap); }