TNG / ArchUnitNET

A C# architecture test library to specify and assert architecture rules in C# for automated testing.
Apache License 2.0
927 stars 61 forks source link

how is this maintained? all this bugs :( #293

Open jnormen opened 2 months ago

jnormen commented 2 months ago

I have so many issues with this library. If not old bugs, there are new once.

Sorry I'm so negative about this framework, I throw it out... it had potential, but more issues than it bring values...

But there are bugs I have reported month ago that are not fixed. :/ like the Any Attribute issue.

fgather commented 2 months ago

@jnormen I'm really sorry that you are not happy with the latest release. Could you give some example that helps us to reproduce your issues? I was only able to find one of your bug reports https://github.com/TNG/ArchUnitNET/issues/257, which was closed in May, as the original description could not be reproduced. As it was never reopened after you provided examples, we probably did not see them. However, I'll answer quickly there, as it was very likely an issue in the way the assembly was loaded.

jnormen commented 2 months ago

It start to complain that it does not find any Abstract classes. I check if I have abstract and not sealed then the classes shall end with "Base" but it suddenly it does not find anything.

for now I added .WithoutRequiringPositiveResults()

So I at least can release my services :) I will check in to this in more detail later on.

Not sure if there is a cache issue either. I have seen strange things with roslyn etc...

alexanderlinne commented 1 month ago

This is expected due to a breaking change in 0.11.0 and was documented in the release notes. If this test now fails it means that the predicates never matched any types in your architecture. With the new release, if you don't use .WithoutRequiringPositiveResults(), each test is required to have its conditions checked agains at least one type successfully, otherwise the test is considered failed. This protects against tests that do not actually test anything.

If you suspect a bug here, i.e. that your test should find abstract classes in your architecture, feel free to provide an example that reproduces your issue such that we can further investigate.