1 package jp.sourceforge.stigmata.birthmarks.cvfv;
3 import java.io.FileInputStream;
5 import jp.sourceforge.stigmata.Birthmark;
6 import jp.sourceforge.stigmata.BirthmarkElement;
7 import jp.sourceforge.stigmata.BirthmarkEnvironment;
8 import jp.sourceforge.stigmata.BirthmarkExtractor;
9 import jp.sourceforge.stigmata.utils.WellknownClassJudgeRule;
10 import jp.sourceforge.stigmata.utils.WellknownClassJudgeRule.MatchPartType;
11 import jp.sourceforge.stigmata.utils.WellknownClassJudgeRule.MatchType;
12 import jp.sourceforge.stigmata.utils.WellknownClassManager;
14 import org.junit.Assert;
15 import org.junit.Before;
16 import org.junit.Test;
20 * @author Haruaki TAMADA
22 public class CVFVBirthmarkExtractorTest{
23 private BirthmarkExtractor extractor;
27 extractor = new ConstantValueOfFieldVariableBirthmarkService().getExtractor();
28 BirthmarkEnvironment env = BirthmarkEnvironment.getDefaultEnvironment();
29 WellknownClassManager manager = env.getWellknownClassManager();
30 manager.add(new WellknownClassJudgeRule("java.", MatchType.PREFIX, MatchPartType.FULLY_NAME));
31 manager.add(new WellknownClassJudgeRule("javax.", MatchType.PREFIX, MatchPartType.FULLY_NAME));
36 public void checkBirthmark() throws Exception{
37 Birthmark birthmark = extractor.extract(new FileInputStream("target/test-classes/resources/HelloWorldFrame.class"));
38 Assert.assertEquals("cvfv", birthmark.getType());
40 BirthmarkElement[] elements = birthmark.getElements();
41 Assert.assertEquals(2, elements.length);
43 Assert.assertTrue(elements[0] instanceof TypeAndValueBirthmarkElement);
44 Assert.assertTrue(elements[1] instanceof TypeAndValueBirthmarkElement);
46 Assert.assertEquals("Ljava/lang/String;", ((TypeAndValueBirthmarkElement)elements[0]).getSignature());
47 Assert.assertEquals("Ljava/lang/String;", ((TypeAndValueBirthmarkElement)elements[1]).getSignature());
49 Assert.assertEquals("Hello World", elements[0].getValue());
50 Assert.assertEquals("Lucida Regular", elements[1].getValue());