atrium icon indicating copy to clipboard operation
atrium copied to clipboard

"but no match was found" is shown in explanation

Open robstoll opened this issue 2 years ago • 17 comments

Affected Version

0.18.0

API

fluent-en_GB, infix-en_GB

Platform

jvm, js

Kotlin Version

1.4

How to reproduce the problem?

expect(listOf("hello", "world", "foo", "bar")).notToContain.entry {
     toContain("hello")
}

Describe the bug

output

I expected subject: [hello, world, foo, bar]        (java.util.Arrays.ArrayList <1643453315>)
◆ not to contain: 
  ⚬ an element which needs: 
      » to contain: 
        ⚬ value: "hello"        <2088540432>
            » but no match was found                         <------------ this should not be shown here
      ❗❗ following elements were mismatched: 
         ⚬ index 0: "hello"        <2088540432>

Expected behaviour

output

I expected subject: [hello, world, foo, bar]        (java.util.Arrays.ArrayList <1643453315>)
◆ not to contain: 
  ⚬ an element which needs: 
      » to contain: 
        ⚬ value: "hello"        <2088540432>
      ❗❗ following elements were mismatched: 
         ⚬ index 0: "hello"        <2088540432>

robstoll avatar Mar 30 '23 21:03 robstoll

@robstoll i am motivated to take on this one, if that is possible!

WesleyJammer avatar Feb 17 '25 08:02 WesleyJammer

Well well... I just realised that this particular text will be dropped entirely with the new reporting. But a similar problem still remains and still needs to be fixed (I think, might be I already fixed it). You need to base your work on the feature/proof-based-report branch. Start off with creating a test in CreateReportTest (see existing proofExplanation_... tests). Following the things we want to achieve:

  • UsageHintGroup should not be shown if within a ProofExplanation
  • DebugGroup should not be shown if within a ProofExplanation
  • InformationGroup should be shown within a ProofExplanation
  • FailureExplanationGroup should be shown within a ProofExplanation
  • also address nested cases, e.g. ProofExplanation -> FailureExplanationGroup -> ProofExplanation -> UsageHintGroup

Let me know if you need more Information

robstoll avatar Feb 17 '25 09:02 robstoll

@robstoll So if i am understanding correctly the original issue is fixed, but a similar issue is occuring with the above parts in ProofExplanation?

WesleyJammer avatar Feb 17 '25 12:02 WesleyJammer

@WesleyJammer yes, UsageHintGroup and DebugGroup are most likely shown if they occur in a ProofExplanation currently, but should not

robstoll avatar Feb 17 '25 14:02 robstoll

@robstoll Thanks for the information! i will look into the issue and when i encounter problems or if i have a question i will contact you.

WesleyJammer avatar Feb 17 '25 18:02 WesleyJammer

@robstoll in the readme i cant find the manual to set up the enviroment, for contributing so i want to ask you if you mabye can help me with this? is there something special i should know besides forking?

WesleyJammer avatar Feb 19 '25 13:02 WesleyJammer

Sorry for the delay, that's now the third time I see your issue and start writing an answer. Let's hope I am not getting interrupted again 😁Usually repos welcoming contributors have a CONTRIBUTING.md in the .github folder. Here the one of atrium: https://github.com/robstoll/atrium/blob/main/.github/CONTRIBUTING.md

I include it in good first issues, following the section:

Your first contribution?

  • Write a comment I'll work on this if you would like to take this issue over. This way we get the chance to revise the description in case things have changed in the meantime, we might give you additional hints and we can assign the task to you, so that others do not start as well.
  • See Your first code contribution for guidelines.
  • Do not hesitate to ask questions here or to contact us via Atrium's slack channel if you need help (Invite yourself in case you do not have an account yet).

robstoll avatar Feb 19 '25 18:02 robstoll

@robstoll haha no problem at all. I am already more than happy that you help me with my questions! i will look into the guidelines!

WesleyJammer avatar Feb 20 '25 08:02 WesleyJammer

@robstoll when building the main project i get a build failed message because 19 tests are failed, including one that says that i dont have one of the required permissions and it is about creating cymbolic links.

WesleyJammer avatar Feb 21 '25 10:02 WesleyJammer

failed or ignored? Are you on windows? Do you have a slack account in the kotlin space? Maybe easier to communicate

robstoll avatar Feb 21 '25 12:02 robstoll

first ignored, but the build ends with 19 failed tests and then the message build failed. The test results you can find in build - reports- test- jvmTest - index.html. yes i am on windows.

WesleyJammer avatar Feb 21 '25 13:02 WesleyJammer

The CI is green for windows but a lot of tests are ignored since there are features which Windows does not support: https://github.com/robstoll/atrium/actions/runs/13435355382/job/37536311080#step:5:510

I guess you encounter a permission issue. Are you able to create symlinks (mklink link_target actual_file) without admin rights? Anyway... you can ignore those failures for know. I'll see If I am able to reproduce your error but I first need to setup a windows VM. We can do a quick pair programming to try to resolve your issue if you want.

(I guess you work with windows directly, I suggest you install ubuntu via WSL, working in an ubuntu env will be much more pleasant and you won't run in such stupid errors 😆)

In any case, you can ignore those failing tests and start with your work.

robstoll avatar Feb 21 '25 13:02 robstoll

@robstoll i have problems with running tests. i did not have started with adding new things, but i wanted to see if the current tests in CreateReportTest are working. The only thing is that i get this error:

> Cannot find a Java installation on your machine matching this tasks requirements: {languageVersion=11, vendor=any vendor, implementation=vendor-specific} for WINDOWS on x86_64.
   > No locally installed toolchains match and toolchain download repositories have not been configured.

* Try:
> Learn more about toolchain auto-detection at https://docs.gradle.org/8.12/userguide/toolchains.html#sec:auto_detection.
> Learn more about toolchain repositories at https://docs.gradle.org/8.12/userguide/toolchains.html#sub:download_repositories.
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.
> Get more help at https://help.gradle.org.
Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0.
You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.
For more on this, please refer to https://docs.gradle.org/8.12/userguide/command_line_interface.html#sec:command_line_warnings in the Gradle documentation.
BUILD FAILED in 4s
50 actionable tasks: 50 up-to-date

the first sentence says it cannot find java version 11 but i do have that version installed, because i needed it for building gradle in the first place.

WesleyJammer avatar Feb 25 '25 15:02 WesleyJammer

Let's continue in a discussion to keep the issue clean: https://github.com/robstoll/atrium/discussions/1905 Also, other contributors using Windows might benefit in the future

robstoll avatar Feb 25 '25 15:02 robstoll

@robstoll i want to let you know that i am still motivated to take on this issue, but that it may take a while longer with progress. this is because of diffrent reasons including other school obligations, i hope this is not an problem?

WesleyJammer avatar Mar 10 '25 12:03 WesleyJammer

Not at all, take your time and make sure you pull upstream so that when you start/continue your work, it is based on latest.

robstoll avatar Mar 10 '25 13:03 robstoll

thanks alot and i will do that!

WesleyJammer avatar Mar 11 '25 08:03 WesleyJammer