This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

View | Details | Raw Unified | Return to bug 249533
Collapse All | Expand All

(-)a/cnd.remote/test/unit/src/org/netbeans/modules/cnd/remote/full/FullRemoteBuildTestCase.java (-1 / +33 lines)
Lines 46-54 Link Here
46
import java.io.IOException;
46
import java.io.IOException;
47
import java.io.PrintWriter;
47
import java.io.PrintWriter;
48
import java.util.concurrent.TimeUnit;
48
import java.util.concurrent.TimeUnit;
49
import java.util.concurrent.atomic.AtomicReference;
50
import junit.framework.AssertionFailedError;
49
import org.netbeans.modules.cnd.remote.test.RemoteBuildTestBase;
51
import org.netbeans.modules.cnd.remote.test.RemoteBuildTestBase;
50
import junit.framework.Test;
52
import junit.framework.Test;
51
import org.netbeans.api.project.ProjectManager;
53
import org.netbeans.api.project.ProjectManager;
54
import org.netbeans.modules.cnd.api.model.CsmProject;
52
import org.netbeans.modules.cnd.makeproject.MakeProject;
55
import org.netbeans.modules.cnd.makeproject.MakeProject;
53
import org.netbeans.modules.cnd.remote.test.RemoteDevelopmentTest;
56
import org.netbeans.modules.cnd.remote.test.RemoteDevelopmentTest;
54
import org.netbeans.modules.nativeexecution.api.ExecutionEnvironment;
57
import org.netbeans.modules.nativeexecution.api.ExecutionEnvironment;
Lines 67-72 Link Here
67
70
68
    private String remoteTmpDir;
71
    private String remoteTmpDir;
69
    
72
    
73
    static {
74
        System.setProperty("cnd.use.indexing.api", "false");
75
    }
76
    
70
    public FullRemoteBuildTestCase(String testName) {
77
    public FullRemoteBuildTestCase(String testName) {
71
        super(testName);
78
        super(testName);
72
    }
79
    }
Lines 113-119 Link Here
113
        assertNotNull("Error opening project " + remoteProjectFO, makeProject);
120
        assertNotNull("Error opening project " + remoteProjectFO, makeProject);
114
        return makeProject;
121
        return makeProject;
115
    }
122
    }
116
    
123
124
    @ForAllEnvironments
125
    public void test_iz_249533() throws Exception {
126
        MakeProject makeProject = importProject("simple_make_project_to_import", false);
127
        final String origHeaderName = "change_case.h";
128
        final FileObject parentFO = makeProject.getProjectDirectory();
129
        FileObject headerFO = parentFO.getFileObject(origHeaderName);
130
        assertNotNull(headerFO);
131
        headerFO.delete();
132
        CsmProject csmProject = getCsmProject(makeProject);
133
        AtomicReference<AssertionFailedError> exRef = new AtomicReference<>();
134
        try {
135
            checkCodeModel(makeProject);
136
        } catch (AssertionFailedError ex) {
137
            exRef.set(ex);
138
        }
139
        AssertionFailedError ex = exRef.get();
140
        assertNotNull(ex);
141
        String messageStart = "Unresolved include";
142
        assertTrue("Unexpected exception " + ex.getMessage() + ", expected " + messageStart  , ex.getMessage().startsWith(messageStart));
143
        headerFO = parentFO.createData(origHeaderName);
144
        sleep(1);
145
        csmProject.waitParse();
146
        checkCodeModel(makeProject);
147
    }
148
117
    @ForAllEnvironments
149
    @ForAllEnvironments
118
    public void testFullRemoteBuildSimple() throws Exception {
150
    public void testFullRemoteBuildSimple() throws Exception {
119
        MakeProject makeProject = importProject("simple_make_project_to_import", false);
151
        MakeProject makeProject = importProject("simple_make_project_to_import", false);
(-)a/cnd.remote/test/unit/src/org/netbeans/modules/cnd/remote/test/RemoteBuildTestBase.java (-1 / +6 lines)
Lines 386-397 Link Here
386
        }
386
        }
387
    }
387
    }
388
388
389
    protected void checkCodeModel(MakeProject makeProject) throws Exception {
389
    protected CsmProject getCsmProject(MakeProject makeProject) throws Exception {
390
        NativeProject np = makeProject.getLookup().lookup(NativeProject.class);
390
        NativeProject np = makeProject.getLookup().lookup(NativeProject.class);
391
        assertNotNull("Null NativeProject", np);
391
        assertNotNull("Null NativeProject", np);
392
        CsmModel model = CsmModelAccessor.getModel();
392
        CsmModel model = CsmModelAccessor.getModel();
393
        ((ModelImpl) model).enableProject(np);
393
        ((ModelImpl) model).enableProject(np);
394
        CsmProject csmProject = model.getProject(makeProject);
394
        CsmProject csmProject = model.getProject(makeProject);
395
        return csmProject;
396
    }
397
    
398
    protected void checkCodeModel(MakeProject makeProject) throws Exception {
399
        CsmProject csmProject = getCsmProject(makeProject);
395
        assertNotNull("Null CsmProject", csmProject);
400
        assertNotNull("Null CsmProject", csmProject);
396
        csmProject.waitParse();
401
        csmProject.waitParse();
397
        checkIncludes(csmProject, true);
402
        checkIncludes(csmProject, true);

Return to bug 249533