/** * This file is licensed under the University of Illinois/NCSA Open Source License. See LICENSE.TXT for details. */ package edu.illinois.keshmesh.detector.tests.lck06j; import static org.junit.Assert.assertEquals; import static org.junit.Assume.assumeNotNull; import org.eclipse.core.runtime.CoreException; import org.eclipse.core.runtime.OperationCanceledException; import org.junit.Assert; import org.junit.Test; import edu.illinois.keshmesh.detector.LCK06JIntermediateResults; import edu.illinois.keshmesh.detector.bugs.BugInstance; import edu.illinois.keshmesh.detector.bugs.BugPattern; import edu.illinois.keshmesh.detector.bugs.BugPatterns; import edu.illinois.keshmesh.detector.bugs.FixInformation; import edu.illinois.keshmesh.detector.bugs.LCK06JFixInformation; import edu.illinois.keshmesh.detector.tests.AbstractTestCase; import edu.illinois.keshmesh.detector.tests.BugInstanceCreator; import edu.illinois.keshmesh.detector.util.CollectionUtils; /** * * @author Mohsen Vakilian * @author Stas Negara * */ abstract public class LCK06JTest extends AbstractTestCase { @Override protected BugPattern getBugPattern() { return BugPatterns.LCK06J; } @Override protected void fixBugInstance(BugInstance bugInstance) throws OperationCanceledException, CoreException { Assert.assertNotNull("Could not find bug instance.", bugInstance); } protected String getExpectedStaticFields() { return null; } @Test public void testStaticFields() { assumeNotNull(getExpectedStaticFields()); LCK06JIntermediateResults actualIntermediateResults = (LCK06JIntermediateResults) getIntermediateResults(); assertEquals(getExpectedStaticFields(), actualIntermediateResults.getStaticFields()); } @Override protected BugInstanceCreator getBugInstanceCreator() { return new LCK06JBugInstanceCreator(); } protected static class LCK06JBugInstanceCreator extends AbstractTestCase.GeneralBugInstanceCreator { @Override public FixInformation createFixInformation(String... replacements) { return new LCK06JFixInformation(CollectionUtils.asSet(replacements)); } } }