问题标签 [archunit]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
55 浏览

archunit - 如何防止 ArchUnit 对某个 API(例如 Streaming API 或 Builder API)的通用使用?

给定一组不应禁止使用某些 API(无论出于何种原因)的类。

例如,禁止 Java 8 Streaming API,或调用Builder内部类,因为您想强制对特定类使用循环和构造函数。

ownerName关键部分是您事先不知道,并且callMethod(methodName)我无法粗粒度地禁止调用stream()build()方法。

有任何想法吗?

0 投票
1 回答
55 浏览

java - 使用 Archunit 时如何忽略静态依赖项

在我的一项 Archunit 测试中,我正在检查(例如)只有服务层中的类才被表示层中的类所依赖。

该测试失败,因为据我所知,表示层中的某些类在其他非服务层中具有常量的静态导入。

我该如何减轻这种情况?我的一个想法是排除静态导入。如何使用流利的 API 做到这一点?

0 投票
1 回答
57 浏览

java - 是什么导致了这个 ArchUnit 异常?

谢谢你的时间,

我一直在尝试使用 Archunit,但我无法解决这个问题:

我有一个相当标准的植物图;虽然我不想分享它,但 ArchUnit 可能有一些细微差别,我错过了。我的问题是,具体来说,在高层次上,我必须做错什么吗?

附加信息:测试:

yaml:

0 投票
1 回答
87 浏览

java - 如何使用 ArchUnit 检查是否在正确的类中调用了构造函数?

有没有办法使用 ArchUnit 强制执行这样的规则:

这里的问题是beCalledInClassesThat不存在,我找不到任何可以让我实施这样的测试的东西。

0 投票
1 回答
49 浏览

archunit - 是否存在一种使用 ArchUnit 验证任何方法都不会引发任何异常的方法?

我想知道 ArchUnit 中是否存在避免方法签名引发任何已检查异常的方法。

0 投票
1 回答
53 浏览

c# - 如何在 ArchUnit c# 中检查方法返回类型

我需要检查是否只有一个类方法(“ExampleMethod”)返回“ExampleType”。我可以用 C# 中的 ArchUnit 做到这一点吗?

0 投票
1 回答
21 浏览

kotlin - Kotlin ArchUnit:如何设置规则不要求属于 kotlin 语言的对象?

我正在尝试使用 Arch Unit 设置测试来测试我的命名约定和注释。

我有这堂课:

我的班级测试是这个:

但我得到这些错误:

我不知道如何告诉拱门忽略同伴,何时或其他不是我的课。

我究竟做错了什么?

0 投票
2 回答
33 浏览

archunit - 如何在 ArchUnit 中只允许某些循环依赖?

在 ArchUnit 中,我可以检查 packages .should().beFreeOfCycles()。如何为某些周期指定此规则的例外情况?

例如,给定这些包及其依赖项:

我怎样才能允许A <-> B,但仍然禁止AB成为任何其他周期的一部分,例如B <-> C

0 投票
1 回答
65 浏览

java - 如何断言 HashMap 键与 ArchUnit 可比?

背景:https ://dev.to/carey/java-map-keys-should-always-be-comparable-2c1b

我想要达到的目标:

  1. 查找使用 HashMap 的代码。
  2. 找出 HashMaps 键的类型。
  3. 检查键类型是否实现了 Comparable 接口。
  4. (可选)检查该类型是否位于某个包中。

我卡在第 2 步

任何想法如何获得泛型类的类型?感谢您的支持。

0 投票
1 回答
22 浏览

archunit - 如何区分分层架构中的使用和继承?

我正在尝试验证以下依赖项:

关系

来源

在这张图中,红色的关系被禁止,绿色的关系被允许:

  • 适配器包中的任何类都不能继承自端口包中的类;
  • 适配器包中的任何类都可以使用(例如具有字段)端口包中的类;
  • 服务包中的任何类都不能使用端口包中的类(例如,有一个字段);
  • service包中的任何类都可以继承port包中的类;

如果可能的话,我想将这些验证添加到分层架构中。

谢谢你。