Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tests listeted in test-manifest contain C specific names #55

Closed
cmnrd opened this issue Nov 14, 2019 · 7 comments
Closed

Tests listeted in test-manifest contain C specific names #55

cmnrd opened this issue Nov 14, 2019 · 7 comments

Comments

@cmnrd
Copy link
Collaborator

cmnrd commented Nov 14, 2019

Some of the tests listed in test-manifest end with a 'C' which point to a C specific test. I think the 'C' should be removed in all tests to have the same tests across targets. Or is there some other meaning to the 'C' that I don't see?

It might also be beneficial in the future to add the possibility of defining additional target specific tests.

cmnrd added a commit to tud-ccc/lingua-franca that referenced this issue Nov 14, 2019
@edwardalee
Copy link
Collaborator

I have renamed the C tests to remove the C. Also changed them so that main reactors named Main have been renamed to match the filename. Should I also change the C++ tests?

@lhstrh
Copy link
Member

lhstrh commented Nov 14, 2019 via email

@lhstrh
Copy link
Member

lhstrh commented Nov 26, 2019

To allow target specific tests, here are three proposals:

  • rename test-manifest to common-test-manifest and introduce <target>-test-manifest files to list target-specific tests
  • keep test-manifest and introduce <target>/test-manifest files to list target-specific tests
  • keep test-manifest add sectioning to the file to denote target-specific tests
    Not sure which one to choose. Comments?

@cmnrd
Copy link
Collaborator Author

cmnrd commented Nov 26, 2019

I am in favour of keeping one single file with multiple 'sections'. But I would suggest to make the test-manifest a configuration file with a slighlty more complex structure. This would also help us to solve the problem discussed in 47aff87 and #54. The configuration file would be the central place to describe all tests and if we change smth in the way tests are handled, we would only need to modify the test script and adapt the configuration where needed. We could als include support for expected fails (i.e. to validate compile time or runtime checks) or expected results.

common:
  HelloWorld:
    timeout: 1
    fast: false
C:
  OnlyCTest:
    timeout: 2
    fast: true
C++:
  CppExpectedFail:
    timeout: 1
    fast: false
    expected_fail: "true"

This of course would require run-lf-tests to be a more complex script, but it shouldn't be hard to implement something like that in python or another scripting language. If you want I could give this a shot, but I am not sure yet when I will find time for it.

@schoeberl
Copy link
Collaborator

schoeberl commented Nov 26, 2019 via email

@cmnrd
Copy link
Collaborator Author

cmnrd commented Nov 26, 2019

Agreed. In fact the code snippet I showed is YAML. I only forgot to mention that.

@cmnrd
Copy link
Collaborator Author

cmnrd commented Jun 2, 2021

I think this is closed by the organization of our test directories and the new JUnit based test infrastructure.

@cmnrd cmnrd closed this as completed Jun 2, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants