package org.jf.smalidea.findUsages; import com.intellij.usages.impl.rules.UsageType; public class MethodUsageTypeTest extends UsageTypeTest { public MethodUsageTypeTest() { super(new SmaliUsageTypeProvider()); } public void testMethodUsageTypes() throws Exception { doTest("blah.smali", "" + ".class public Lblah;\n" + ".super Ljava/lang/Object;\n" + "\n" + ".annotation runtime Lblah;\n" + " element = Lblah;->bl<ref:1>ah()V;\n" + ".end annotation\n" + "\n" + ".method public blah()V\n" + " .registers 2\n" + "\n" + " invoke-direct {v0}, Lblah;->bl<ref:2>ah()V\n" + " invoke-direct/empty {v0}, Lblah;->bl<ref:3>ah()V\n" + " invoke-direct/range {v0}, Lblah;->bl<ref:4>ah()V\n" + " invoke-interface {v0}, Lblah;->bl<ref:5>ah()V\n" + " invoke-interface/range {v0}, Lblah;->bl<ref:6>ah()V\n" + " invoke-object-init/range {v0}, Lblah;->bl<ref:7>ah()V\n" + " invoke-static {v0}, Lblah;->bl<ref:8>ah()V\n" + " invoke-static/range {v0}, Lblah;->bl<ref:9>ah()V\n" + " invoke-super {v0}, Lblah;->bl<ref:10>ah()V\n" + " invoke-super/range {v0}, Lblah;->bl<ref:11>ah()V\n" + " invoke-virtual {v0}, Lblah;->bl<ref:12>ah()V\n" + " invoke-virtual/range {v0}, Lblah;->bl<ref:13>ah()V\n" + "\n" + " throw-verification-error generic-error, Lblah;->bl<ref:14>ah()V\n" + "\n" + " return-void\n" + ".end method\n", 1, SmaliUsageTypeProvider.LITERAL, 2, UsageType.UNCLASSIFIED, 3, UsageType.UNCLASSIFIED, 4, UsageType.UNCLASSIFIED, 5, UsageType.UNCLASSIFIED, 6, UsageType.UNCLASSIFIED, 7, UsageType.UNCLASSIFIED, 8, UsageType.UNCLASSIFIED, 9, UsageType.UNCLASSIFIED, 10, UsageType.UNCLASSIFIED, 11, UsageType.UNCLASSIFIED, 12, UsageType.UNCLASSIFIED, 13, UsageType.UNCLASSIFIED, 14, SmaliUsageTypeProvider.VERIFICATION_ERROR); } }