From 0c8ce9e6a71310a2dd889dd96a1dfdb42ac11563 Mon Sep 17 00:00:00 2001 From: Dmitry Avdeev Date: Thu, 7 May 2015 16:18:28 +0300 Subject: [PATCH 1/8] IDEA-139883 Changes in file associations are not saved --- .../fileTypes/impl/FileTypeManagerImpl.java | 4 ++-- .../openapi/fileTypes/impl/FileTypesTest.java | 16 +++++++++++++++- 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/platform/platform-impl/src/com/intellij/openapi/fileTypes/impl/FileTypeManagerImpl.java b/platform/platform-impl/src/com/intellij/openapi/fileTypes/impl/FileTypeManagerImpl.java index 9a35af12118c..82bcff9b52a6 100644 --- a/platform/platform-impl/src/com/intellij/openapi/fileTypes/impl/FileTypeManagerImpl.java +++ b/platform/platform-impl/src/com/intellij/openapi/fileTypes/impl/FileTypeManagerImpl.java @@ -91,7 +91,7 @@ public class FileTypeManagerImpl extends FileTypeManagerEx implements Persistent "*.hprof;*.pyc;*.pyo;*.rbc;*~;.DS_Store;.bundle;.git;.hg;.svn;CVS;RCS;SCCS;__pycache__;.tox;_svn;rcs;vssver.scc;vssver2.scc;"; private static boolean RE_DETECT_ASYNC = !ApplicationManager.getApplication().isUnitTestMode(); - private final Collection myDefaultTypes = new THashSet(); + private final Set myDefaultTypes = new THashSet(); private final List mySpecialFileTypes = new ArrayList(); private FileTypeAssocTable myPatternsTable = new FileTypeAssocTable(); @@ -1007,7 +1007,7 @@ public class FileTypeManagerImpl extends FileTypeManagerEx implements Persistent List notExternalizableFileTypes = new ArrayList(); for (FileType type : mySchemesManager.getAllSchemes()) { - if (!(type instanceof AbstractFileType)) { + if (!(type instanceof AbstractFileType) || myDefaultTypes.contains(type)) { notExternalizableFileTypes.add(type); } } diff --git a/platform/platform-tests/testSrc/com/intellij/openapi/fileTypes/impl/FileTypesTest.java b/platform/platform-tests/testSrc/com/intellij/openapi/fileTypes/impl/FileTypesTest.java index 12ac4f6f267d..4d8c43bb847f 100644 --- a/platform/platform-tests/testSrc/com/intellij/openapi/fileTypes/impl/FileTypesTest.java +++ b/platform/platform-tests/testSrc/com/intellij/openapi/fileTypes/impl/FileTypesTest.java @@ -351,7 +351,7 @@ public class FileTypesTest extends PlatformTestCase { } private static void log(String message) { - //System.out.println(message); + System.out.println(message); } private void ensureRedetected(VirtualFile vFile, Set detectorCalled) { @@ -510,4 +510,18 @@ public class FileTypesTest extends PlatformTestCase { fail(JDOMUtil.writeElement(map)); } } + + public void testDefaultFileType() throws Exception { + FileType idl = myFileTypeManager.findFileTypeByName("IDL"); + myFileTypeManager.associatePattern(idl, "*.xxx"); + Element element = myFileTypeManager.getState(); + log(JDOMUtil.writeElement(element)); + myFileTypeManager.removeAssociatedExtension(idl, "xxx"); + myFileTypeManager.clearForTests(); + myFileTypeManager.initStandardFileTypes(); + myFileTypeManager.loadState(element); + myFileTypeManager.initComponent(); + FileType extensions = myFileTypeManager.getFileTypeByExtension("xxx"); + assertEquals("IDL", extensions.getName()); + } } From 36ead80b717c504ee00618de12ba54f043c5a34d Mon Sep 17 00:00:00 2001 From: Sergey Simonchik Date: Thu, 7 May 2015 16:28:45 +0300 Subject: [PATCH 2/8] fix broken test --- .../testSrc/com/intellij/execution/GeneralCommandLineTest.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/platform/platform-tests/testSrc/com/intellij/execution/GeneralCommandLineTest.java b/platform/platform-tests/testSrc/com/intellij/execution/GeneralCommandLineTest.java index ffbb6888bfcf..9c550db2abe5 100644 --- a/platform/platform-tests/testSrc/com/intellij/execution/GeneralCommandLineTest.java +++ b/platform/platform-tests/testSrc/com/intellij/execution/GeneralCommandLineTest.java @@ -109,8 +109,9 @@ public class GeneralCommandLineTest { File dir = FileUtil.createTempDirectory("path with spaces 'and quotes' и юникодом ", ".tmp"); try { GeneralCommandLine commandLine = makeJavaCommand(ParamPassingTest.class, dir); + commandLine.addParameter("test"); String output = execAndGetOutput(commandLine, null); - assertEquals("=====\n=====\n", StringUtil.convertLineSeparators(output)); + assertEquals("test\n", StringUtil.convertLineSeparators(output)); } finally { FileUtil.delete(dir); From 350226a6ced93567f312c0ca86239fbda65183c6 Mon Sep 17 00:00:00 2001 From: Anna Kozlova Date: Thu, 7 May 2015 15:43:52 +0200 Subject: [PATCH 3/8] fix testdata --- .../junit/JUnitTreeByDescriptionHierarchyTest.java | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/plugins/junit/test/com/intellij/execution/junit/JUnitTreeByDescriptionHierarchyTest.java b/plugins/junit/test/com/intellij/execution/junit/JUnitTreeByDescriptionHierarchyTest.java index 85d9482e0fb1..09af7f023798 100644 --- a/plugins/junit/test/com/intellij/execution/junit/JUnitTreeByDescriptionHierarchyTest.java +++ b/plugins/junit/test/com/intellij/execution/junit/JUnitTreeByDescriptionHierarchyTest.java @@ -64,7 +64,7 @@ public class JUnitTreeByDescriptionHierarchyTest { "##teamcity[enteredTheMatrix]\n" + - "##teamcity[rootName name = 'root']\n" + + "##teamcity[rootName name = 'root' location = 'java:suite://root']\n" + "##teamcity[testSuiteFinished name='root']\n" + "##teamcity[testSuiteStarted name ='TestA']\n" + "##teamcity[testSuiteStarted name ='|[0|]']\n" + @@ -108,7 +108,7 @@ public class JUnitTreeByDescriptionHierarchyTest { "##teamcity[suiteTreeEnded name='|[1|]']\n", //start "##teamcity[enteredTheMatrix]\n" + - "##teamcity[rootName name = 'TestA' comment = 'a']\n" + + "##teamcity[rootName name = 'TestA' comment = 'a' location = 'java:suite://a.TestA']\n" + "##teamcity[testSuiteStarted name ='|[0|]']\n" + "##teamcity[testStarted name='testName|[0|]' locationHint='java:test://a.TestA.testName|[0|]']\n" + "\n" + @@ -153,7 +153,7 @@ public class JUnitTreeByDescriptionHierarchyTest { //started "##teamcity[enteredTheMatrix]\n" + - "##teamcity[rootName name = 'root']\n" + + "##teamcity[rootName name = 'root' location = 'java:suite://root']\n" + "##teamcity[testSuiteFinished name='root']\n" + "##teamcity[testSuiteStarted name ='ASuite1']\n" + "##teamcity[testSuiteStarted name ='ATest']\n" + @@ -232,7 +232,7 @@ public class JUnitTreeByDescriptionHierarchyTest { //start "##teamcity[enteredTheMatrix]\n" + - "##teamcity[rootName name = 'root']\n" + + "##teamcity[rootName name = 'root' location = 'java:suite://root']\n" + "##teamcity[testSuiteFinished name='root']\n" + "##teamcity[testSuiteStarted name ='ATest']\n" + "##teamcity[testSuiteStarted name ='|[0|]']\n" + @@ -288,7 +288,7 @@ public class JUnitTreeByDescriptionHierarchyTest { "##teamcity[enteredTheMatrix]\n" + - "##teamcity[rootName name = 'TestA']\n" + + "##teamcity[rootName name = 'TestA' location = 'java:suite://TestA']\n" + "##teamcity[testStarted name='warning' locationHint='java:test://junit.framework.TestSuite$1.warning']\n" + "\n" + "##teamcity[testFinished name='warning']\n" + From 676ab3363ab3d3681ad12919a7ba74c62f79b9b9 Mon Sep 17 00:00:00 2001 From: Konstantin Bulenkov Date: Thu, 7 May 2015 16:12:47 +0200 Subject: [PATCH 4/8] rollback warning attributes --- .../src/DefaultColorSchemesManager.xml | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/platform/platform-resources/src/DefaultColorSchemesManager.xml b/platform/platform-resources/src/DefaultColorSchemesManager.xml index 84b4538bdbdf..cec4d4fcb8b6 100644 --- a/platform/platform-resources/src/DefaultColorSchemesManager.xml +++ b/platform/platform-resources/src/DefaultColorSchemesManager.xml @@ -306,9 +306,11 @@