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

Add a way of writing simple regression tests #141

Open
wants to merge 11 commits into
base: master
Choose a base branch
from

Conversation

Marwes
Copy link
Contributor

@Marwes Marwes commented Apr 11, 2017

This adds the simplest possible regression test to corrode which only runs a c file through gcc as well as corrode + rustc and then runs both applications checking that their exit status is the same.

Also made some tweaks to corrode-cc to make it work for me on windows (in git bash)

@Marwes
Copy link
Contributor Author

Marwes commented Apr 11, 2017

Potentially I could list all .c files in tests/regression-tests and generate a test for each file. What do you think @jameysharp ?

Marwes added 5 commits April 15, 2017 09:46
This adds the simplest possible regression test to corrode which only runs a c file through gcc as well as corrode + rustc and then runs both applications checking that their exit status is the same.
Moves all logic except a thin wrapper out of the executable Main module and into the library itself which makes it possible for the test module to run corrode directly instead of going through an external process. (Running corrode as an external process does not work at all from the tests since there is no way of knowing where the corrode executable is placed).
@Marwes
Copy link
Contributor Author

Marwes commented Apr 29, 2017

Turns out that having main omit the return statement is only defined on c99 so I enabled c99 on the tests. I could perhaps just run the no-return-main under c99 but I am not aware of anything that needs to run under an older c version at the moment.

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

Successfully merging this pull request may close these issues.

1 participant