ArchUnit:验证方法仅调用一个外部方法
创始人
2024-09-12 07:30:30
0

可以使用ArchUnit框架中的API来验证一个方法是否仅调用了一个外部方法。示例如下:

@Test public void verifyMethodOnlyCallsOneOutsideMethod() { JavaClasses classes = new ClassFileImporter().importPackages("com.example"); DescribedPredicate predicate = new DescribedPredicate("calls only one outside method") { @Override public boolean apply(JavaMethod input) { return input.getCallsFromSelf().stream() .filter(call -> !call.getTarget().isConstructor()) .map(call -> call.getTarget().getOwner()) .distinct() .count() == 1; } }; ArchRule rule = methods().that().arePublic().should().satisfy(predicate); rule.check(classes); }

上述代码使用ArchUnit验证方法的调用是否只有一个外部方法。方法调用列表中排除构造函数的方法,将目标方法的所属者进行去重,如果去重之后的数量为1,则表示方法仅调用了一个外部方法。最后,定义ArchRule来应用验证规则。

相关内容

热门资讯

开挂辅助安装"wep... 开挂辅助安装"wepoker手机版辅助"开挂(透视)辅助安装(有挂方针)【无需打开直接搜索加薇136...
开挂辅助下载"wep... 开挂辅助下载"wepoker能不能透视"开挂(透视)辅助下载(有挂细节)wepoker能不能透视ai...
开挂辅助脚本"pok... 较多好评“微乐万能挂官网”开挂(透视)辅助教程 了解更多开挂安装加(136704302)微信号是一款...
开挂辅助安装"wep... 您好:这款wepoker有辅助吗游戏是可以开挂的,确实是有挂的,很多玩家在这款wepoker有辅助吗...
开挂辅助安装"wep... 开挂辅助安装"wepoker辅助器官方"开挂(透视)辅助下载(有挂技巧);无需打开直接搜索薇:136...
开挂辅助插件"wpk... 开挂辅助插件"wpk模拟器是什么"开挂(透视)辅助安装(有挂总结);打开点击测试直接进入微信(136...
开挂辅助工具"佛手在... 大家好,今天小编来为大家解答佛手在线大菠萝为什么都输这个问题咨询软件客服可以免费测试直接加微信(13...
开挂辅助脚本"aap... 开挂辅助脚本"aapoker插件"开挂(透视)辅助安装(有挂头条);无需打开直接搜索打开薇:1367...
开挂辅助软件"hhp... 开挂辅助软件"hhpoker免费辅助器"开挂(透视)辅助平台(有挂存在);无需打开直接搜索微信(13...
开挂辅助安装"wep... wepoker插件功能辅助器是一款可以让一直输的玩家,快速成为一个“必胜”的ai辅助神器,有需要的用...