summaryrefslogtreecommitdiff
path: root/jps/jps-builders/testSrc/org/jetbrains/jps/builders/rebuild/JpsRebuildTestCase.groovy
diff options
context:
space:
mode:
Diffstat (limited to 'jps/jps-builders/testSrc/org/jetbrains/jps/builders/rebuild/JpsRebuildTestCase.groovy')
-rw-r--r--jps/jps-builders/testSrc/org/jetbrains/jps/builders/rebuild/JpsRebuildTestCase.groovy98
1 files changed, 0 insertions, 98 deletions
diff --git a/jps/jps-builders/testSrc/org/jetbrains/jps/builders/rebuild/JpsRebuildTestCase.groovy b/jps/jps-builders/testSrc/org/jetbrains/jps/builders/rebuild/JpsRebuildTestCase.groovy
deleted file mode 100644
index 7c102399e989..000000000000
--- a/jps/jps-builders/testSrc/org/jetbrains/jps/builders/rebuild/JpsRebuildTestCase.groovy
+++ /dev/null
@@ -1,98 +0,0 @@
-/*
- * Copyright 2000-2012 JetBrains s.r.o.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jetbrains.jps.builders.rebuild
-import com.intellij.openapi.application.ex.PathManagerEx
-import com.intellij.openapi.util.io.FileUtil
-import com.intellij.util.io.TestFileSystemBuilder
-import org.jetbrains.annotations.NotNull
-import org.jetbrains.jps.util.JpsPathUtil
-import org.jetbrains.jps.builders.JpsBuildTestCase
-import org.jetbrains.jps.model.java.JpsJavaExtensionService
-/**
- * @author nik
- */
-abstract class JpsRebuildTestCase extends JpsBuildTestCase {
- protected File myOutputDirectory;
-
- @Override
- protected void setUp() {
- super.setUp()
- addJdk("1.6")
- }
-
- def doTest(String projectPath, Closure expectedOutput) {
- doTest(projectPath, [:], expectedOutput)
- }
-
- def doTest(String projectPath, Map<String, String> pathVariables, Closure expectedOutput) {
- loadAndRebuild(projectPath, pathVariables)
- assertOutput(getOrCreateOutputDirectory().getAbsolutePath(), expectedOutput);
- }
-
- def protected assertOutput(@NotNull String targetFolder, Closure expectedOutput) {
- def root = TestFileSystemBuilder.fs()
- initFileSystemItem(root, expectedOutput)
- root.build().assertDirectoryEqual(new File(FileUtil.toSystemDependentName(targetFolder)))
- }
-
- protected void loadAndRebuild(String projectPath, Map<String, String> pathVariables) {
- loadProject(projectPath, pathVariables)
- rebuild()
- }
-
- protected void rebuild() {
- JpsJavaExtensionService.getInstance().getOrCreateProjectExtension(myProject).outputUrl = JpsPathUtil.pathToUrl(FileUtil.toSystemIndependentName(getOrCreateOutputDirectory().getAbsolutePath()))
- rebuildAll()
- }
-
- private File getOrCreateOutputDirectory() {
- if (myOutputDirectory == null) {
- myOutputDirectory = FileUtil.createTempDirectory("jps-build-output", "")
- }
- myOutputDirectory
- }
-
- @Override
- protected void addPathVariables(Map<String, String> pathVariables) {
- pathVariables.put("ARTIFACTS_OUT", FileUtil.toSystemIndependentName(getOrCreateOutputDirectory().absolutePath) + "/artifacts")
- }
-
- @Override
- protected String getTestDataRootPath() {
- return PathManagerEx.findFileUnderCommunityHome("jps/jps-builders/testData/output").absolutePath
- }
-
- def initFileSystemItem(TestFileSystemBuilder item, Closure initializer) {
- def meta = new Expando()
- meta.dir = {String name, Closure content ->
- initFileSystemItem(item.dir(name), content)
- }
- meta.archive = {String name, Closure content ->
- initFileSystemItem(item.archive(name), content)
- }
- meta.file = {Object[] args ->
- item.file((String)args[0], (String)args.length > 1 ? args[1] : null)
- }
-
- initializer.delegate = meta
- initializer.setResolveStrategy Closure.DELEGATE_FIRST
- initializer()
- }
-
- def File createTempFile() {
- return FileUtil.createTempFile("jps-build-file", "");
- }
-}