package de.vksi.c4j.systemtest.contractclassmagic;
import static de.vksi.c4j.internal.classfile.ClassAnalyzer.getSimplerName;
import org.apache.log4j.Level;
import org.junit.Rule;
import org.junit.Test;
import de.vksi.c4j.ContractReference;
import de.vksi.c4j.systemtest.TransformerAwareRule;
public class ContractReferenceIsInterfaceSystemTest {
@Rule
public TransformerAwareRule transformerAwareRule = new TransformerAwareRule();
@Test
public void testContractReferenceIsInterface() {
new TargetClass();
transformerAwareRule.expectGlobalLog(Level.ERROR, "Ignoring contract "
+ getSimplerName(ContractInterface.class) + " defined on " + getSimplerName(TargetClass.class)
+ " as the contract class is an interface.");
}
@ContractReference(ContractInterface.class)
private static class TargetClass {
}
public interface ContractInterface {
}
}