c.s.tools.ide.analysis.modernize/test/unit/src/ide/analysis/modernize/SingleCppFileCheckTest.java
author Ilia Gromov <ilia@netbeans.org>
Wed, 07 Jun 2017 20:23:29 +0300
branchrelease82
changeset 18423 b9d9af239a0c
parent 18403 ide.analysis.modernize/test/unit/src/ide/analysis/modernize/SingleCppFileCheckTest.java@67d78b11d2e0
permissions -rw-r--r--
Fixing #270763 - Move clang-tidy integration to nb contrib
* * *
Fixing #270763 - Move clang-tidy integration to nb contrib - move wrapper
* * *
Fixing #270763 - Move clang-tidy integration to nb contrib - sign nbm
* * *
Fixing #270763 - Move clang-tidy integration to nb contrib - move tests
* * *
Fixing #270763 - Move clang-tidy integration to nb contrib - data for a new test
* * *
Fixed #270839 - [clang-tidy] Group checks in Editor hints
(transplanted from 35b6125ef00c470655dac6673075f5c12ec74593)
     1 package ide.analysis.modernize;
     2 
     3 import com.sun.tools.ide.analysis.modernize.impl.ModernizeFix;
     4 import java.io.File;
     5 import java.nio.file.Files;
     6 import java.util.List;
     7 import org.junit.Test;
     8 import org.netbeans.modules.cnd.test.CndCoreTestUtils;
     9 import org.openide.cookies.EditorCookie;
    10 import org.openide.filesystems.FileObject;
    11 import org.openide.filesystems.FileUtil;
    12 import org.openide.loaders.DataObject;
    13 
    14 /**
    15  *
    16  * @author Ilia Gromov
    17  */
    18 public class SingleCppFileCheckTest extends TidyTestCase {
    19 
    20     public SingleCppFileCheckTest() {
    21         super("hello-cmake-world");
    22     }
    23 
    24     @Override
    25     protected void setUp() throws Exception {
    26         super.setUp();
    27     }
    28 
    29     public void testModernizeUseNullptr() {
    30         performTest("src/modernize-use-nullptr.cpp", "modernize-use-nullptr", true);
    31     }
    32 
    33     public void testModernizeLoopConvert() {
    34         performTest("src/modernize-loop-convert.cpp", "modernize-loop-convert", true);
    35     }
    36 
    37     @Test
    38     public void testModernizeRawStringLiteral() {
    39         performTest("src/modernize-raw-string-literal.cpp", "modernize-raw-string-literal", true);
    40     }
    41 
    42     @Override
    43     protected void processTestResults(List<ModernizeFix> fixes, String startFileName) throws Exception {
    44         for (ModernizeFix fix : fixes) {
    45             fix.implement();
    46         }
    47 
    48         FileObject footer = getSourceFile(startFileName);
    49 
    50         DataObject dObj = DataObject.find(footer);
    51         EditorCookie ec = dObj.getLookup().lookup(EditorCookie.class);
    52         ec.saveDocument();
    53 
    54         File diffFile = createTempFile("diff", null, false);
    55 
    56         boolean diff = CndCoreTestUtils.diff(FileUtil.toFile(footer), getGoldenFile(startFileName), diffFile);
    57 
    58         if (diff) {
    59             byte[] readAllBytes = Files.readAllBytes(diffFile.toPath());
    60             System.err.println(new String(readAllBytes));
    61             fail();
    62         }
    63     }
    64 }