use of com.android.tools.idea.gradle.project.build.compiler.AndroidGradleBuildConfiguration in project android by JetBrains.
the class IdeFrameFixture method invokeProjectMakeUsingJps.
@NotNull
public CompileContext invokeProjectMakeUsingJps() {
Project project = getProject();
AndroidGradleBuildConfiguration buildConfiguration = AndroidGradleBuildConfiguration.getInstance(project);
buildConfiguration.USE_EXPERIMENTAL_FASTER_BUILD = false;
AtomicReference<CompileContext> contextRef = new AtomicReference<>();
CompilerManager compilerManager = CompilerManager.getInstance(project);
Disposable disposable = new NoOpDisposable();
compilerManager.addCompilationStatusListener(new CompilationStatusListener() {
@Override
public void compilationFinished(boolean aborted, int errors, int warnings, CompileContext compileContext) {
contextRef.set(compileContext);
}
}, disposable);
try {
selectProjectMakeAction();
Wait.seconds(10).expecting("Build (" + COMPILE_JAVA + ") for project " + quote(project.getName()) + " to finish'").until(() -> contextRef.get() != null);
return contextRef.get();
} finally {
Disposer.dispose(disposable);
}
}
use of com.android.tools.idea.gradle.project.build.compiler.AndroidGradleBuildConfiguration in project android by JetBrains.
the class IdeFrameFixture method waitForGradleProjectSyncToFinish.
private void waitForGradleProjectSyncToFinish(boolean expectSyncFailure) {
Project project = getProject();
// ensure GradleInvoker (in-process build) is always enabled.
AndroidGradleBuildConfiguration buildConfiguration = AndroidGradleBuildConfiguration.getInstance(project);
buildConfiguration.USE_EXPERIMENTAL_FASTER_BUILD = true;
Wait.seconds(10).expecting("Syncing project " + quote(project.getName()) + " to finish").until(() -> {
GradleSyncState syncState = GradleSyncState.getInstance(project);
boolean syncFinished = (myGradleProjectEventListener.isSyncFinished() || syncState.isSyncNeeded() != ThreeState.YES) && !syncState.isSyncInProgress();
if (expectSyncFailure) {
syncFinished = syncFinished && myGradleProjectEventListener.hasSyncError();
}
return syncFinished;
});
waitForGradleSyncAction();
if (myGradleProjectEventListener.hasSyncError()) {
RuntimeException syncError = myGradleProjectEventListener.getSyncError();
myGradleProjectEventListener.reset();
throw syncError;
}
if (!myGradleProjectEventListener.isSyncSkipped()) {
waitForBuildToFinish(SOURCE_GEN);
}
GuiTests.waitForBackgroundTasks(robot());
}
Aggregations