blob: e7b5172ac14d2c4d55efca5452e53e8b2124f6f6 [file] [log] [blame]
/*
* Copyright 2000-2014 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 com.intellij.conversion;
import org.junit.Assert;
import java.io.File;
import java.util.List;
/**
* @author nik
*/
public class ProjectConversionTestUtil {
private ProjectConversionTestUtil() {
}
public static void assertNoConversionNeeded(String projectPath) {
final MyConversionListener listener = new MyConversionListener();
final ConversionResult result = ConversionService.getInstance().convertSilently(projectPath, listener);
Assert.assertTrue(result.conversionNotNeeded());
Assert.assertFalse(listener.isConversionNeeded());
Assert.assertFalse(listener.isConverted());
}
public static void convert(String projectPath) {
final MyConversionListener listener = new MyConversionListener();
final ConversionResult result = ConversionService.getInstance().convertSilently(projectPath, listener);
Assert.assertFalse(result.conversionNotNeeded());
Assert.assertFalse(result.openingIsCanceled());
Assert.assertTrue(listener.isConversionNeeded());
Assert.assertTrue(listener.isConverted());
}
public static class MyConversionListener implements ConversionListener {
private boolean myConversionNeeded;
private boolean myConverted;
@Override
public void conversionNeeded() {
myConversionNeeded = true;
}
@Override
public void successfullyConverted(File backupDir) {
myConverted = true;
}
@Override
public void error(String message) {
Assert.fail(message);
}
@Override
public void cannotWriteToFiles(List<File> readonlyFiles) {
}
public boolean isConversionNeeded() {
return myConversionNeeded;
}
public boolean isConverted() {
return myConverted;
}
}
}