diff --git a/jps/model-serialization/src/org/jetbrains/jps/model/serialization/JpsProjectLoader.java b/jps/model-serialization/src/org/jetbrains/jps/model/serialization/JpsProjectLoader.java index 3227eefd6aa0..ac42e6304f86 100644 --- a/jps/model-serialization/src/org/jetbrains/jps/model/serialization/JpsProjectLoader.java +++ b/jps/model-serialization/src/org/jetbrains/jps/model/serialization/JpsProjectLoader.java @@ -220,6 +220,7 @@ public class JpsProjectLoader extends JpsLoaderBase { if (componentRoot == null) return; final Set moduleFiles = new THashSet(FileUtil.FILE_HASHING_STRATEGY); + //final List moduleFiles = new ArrayList(); for (Element moduleElement : JDOMUtil.getChildren(componentRoot.getChild("modules"), "module")) { final String path = moduleElement.getAttributeValue("filepath"); final File file = new File(path); diff --git a/jps/model-serialization/testSrc/org/jetbrains/jps/model/serialization/JpsProjectSerializationTest.java b/jps/model-serialization/testSrc/org/jetbrains/jps/model/serialization/JpsProjectSerializationTest.java index 11fd9c14a968..72ac2d456ed8 100644 --- a/jps/model-serialization/testSrc/org/jetbrains/jps/model/serialization/JpsProjectSerializationTest.java +++ b/jps/model-serialization/testSrc/org/jetbrains/jps/model/serialization/JpsProjectSerializationTest.java @@ -49,12 +49,28 @@ public class JpsProjectSerializationTest extends JpsSerializationTestCase { assertEquals("sampleProjectName", myProject.getName()); List modules = myProject.getModules(); assertEquals(3, modules.size()); - JpsModule main = modules.get(0); - assertEquals("main", main.getName()); - JpsModule util = modules.get(1); - assertEquals("util", util.getName()); - JpsModule xxx = modules.get(2); - assertEquals("xxx", xxx.getName()); + + JpsModule main = null; + JpsModule xxx = null; + JpsModule util = null; + for (JpsModule module : modules) { + final String name = module.getName(); + if ("main".equals(name)) { + main = module; + } + else if ("util".equals(name)) { + util = module; + } + else if ("xxx".equals(name)) { + xxx = module; + } + else { + fail("Unexpected module name " + name); + } + } + assertNotNull("module 'main' was not loaded", main); + assertNotNull("module 'util' was not loaded", util); + assertNotNull("module 'xxx' was not loaded", xxx); assertTrue(FileUtil.filesEqual(new File(baseDirPath, "util"), JpsModelSerializationDataService.getBaseDirectory(util))); @@ -174,8 +190,23 @@ public class JpsProjectSerializationTest extends JpsSerializationTestCase { public void testSaveProject() { loadProject(SAMPLE_PROJECT_PATH); List modules = myProject.getModules(); - doTestSaveModule(modules.get(0), SAMPLE_PROJECT_PATH + "/main.iml"); - doTestSaveModule(modules.get(1), SAMPLE_PROJECT_PATH + "/util/util.iml"); + + JpsModule main = null, util = null; + for (JpsModule module : modules) { + final String name = module.getName(); + if ("main".equals(name)) { + main = module; + } + else if ("util".equals(name)) { + util = module; + } + } + + assertNotNull(main); + assertNotNull(util); + + doTestSaveModule(main, SAMPLE_PROJECT_PATH + "/main.iml"); + doTestSaveModule(util, SAMPLE_PROJECT_PATH + "/util/util.iml"); //tod[nik] remember that test output root wasn't specified and doesn't save it to avoid unnecessary modifications of iml files //doTestSaveModule(modules.get(2), "xxx/xxx.iml");