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

Setup Travis, Gitter and other services. #37

Open
3 of 6 tasks
v0dro opened this issue Jan 11, 2018 · 10 comments
Open
3 of 6 tasks

Setup Travis, Gitter and other services. #37

v0dro opened this issue Jan 11, 2018 · 10 comments

Comments

@v0dro
Copy link
Member

v0dro commented Jan 11, 2018

General checklist of things to setup:

  • Travis CI for linux and macOS

  • Gitter

  • Rubygems version

  • Code Climate

  • Add mention of #sciruby IRC channel on freenode.

  • SimpleCov

@shaunakpp
Copy link
Contributor

We can add Code Climate too. It's free for open-source.

@Paarmita
Copy link

Paarmita commented Jan 17, 2018

@v0dro Can I setup travis CI for linux and macOS?

@v0dro
Copy link
Member Author

v0dro commented Jan 18, 2018

@Paarmita sure. Commit to master branch.

@shaunakpp
Copy link
Contributor

@v0dro since we are refactoring a lot, should we consider adding SimpleCov for checking test suite coverage?

@v0dro
Copy link
Member Author

v0dro commented Jan 25, 2018

The tests don't test any API. They are there for mostly black box testing where the rubex program is compiled and run with some sample input to generate a given output. Unit testing will involve making ASTs manually which is a tedious and time consuming task.

@shaunakpp
Copy link
Contributor

Makes sense, but with Simplecov we could at least judge what parts of the code are getting covered in those Black box tests.

Unit testing will involve making ASTs manually which is a tedious and time consuming task.

For this, we could start with pending tests and at least document a way to write unit test cases.
What do you think?

@v0dro
Copy link
Member Author

v0dro commented Jan 25, 2018

Unit tests for ASTs would be a massive waste of effort. The AST will mostly change with every update since something as simple as a refactor can change the nature of the AST. For example, have a look at the Cython tests: https://github.com/cython/cython/tree/master/tests

They only have hundreds of test files for testing every function of Cython minutely. They never test the Cython API itself (or the AST).

How does simplecov work? Will it actually run the code and see what gets run and what doesn't?

@shaunakpp
Copy link
Contributor

shaunakpp commented Jan 25, 2018

No no, SimpleCov will just trace which parts of the code were touched by the tests.

I've setup SimpleCov on a separate branch, here's the result:

screen shot 2018-01-25 at 3 19 26 pm

An Example File covered by Simplecov:

screen shot 2018-01-25 at 6 48 18 pm

@v0dro
Copy link
Member Author

v0dro commented Jan 25, 2018

Oh. Ok then I'm up for it.

I've updated the checklist.

@translunar
Copy link
Member

@v0dro I've enabled Travis on the Travis-CI website.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants