sunjay / turtle

Create Animated Drawings in Rust
http://turtle.rs
Mozilla Public License 2.0
559 stars 54 forks source link

Address #33: Setup test coverage #195

Closed PaulDance closed 3 years ago

PaulDance commented 3 years ago

Hi @sunjay!

I chose the #33 issue for a first contribution because I think it could be solved easily and should be quite useful.

I tried my best to implement the coverage, as I haven't experimented with Azure whatever yet, but running the commands I added in a new script block works on my machine, except the upload to Codecov that I couldn't test, but this should be the easiest and least error-prone part. I followed advice from https://github.com/xd009642/tarpaulin and examples from https://github.com/crate-ci/azure-pipelines and adapted as I could.

It uses an an old version of Tarpaulin: the 'glutin' dependency requires 'wayland-*' > '0.23', but the 0.23 series uses a removed feature of Tarpaulin since 0.13.4, so either we force a more recent version of wayland and use the latest one of Tarpaulin, either we let it as is and have the older 0.13.3 version.

The Codecov token is left blank for now: if you could set it up for this repo so we may test it before merging, if this issue is still desired of course.

Hope it helps! Cheers.

PaulDance commented 3 years ago

So from my testing, the next thing to do is to pass the Codecov token as an environment variable to the CI runner, but I don't exactly know how to do this: examples I used haven't exactly helped me in this regard. Is it something to be configured on the CI web interface @sunjay? Also the failures under the Windows instances are due to cargo (I think) not recognizing '0.13.3' as a semver version, which is really weird, so I'd like some help on this please.

codecov[bot] commented 3 years ago

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@4a06b0f). Click here to learn what that means. The diff coverage is n/a.

Impacted file tree graph

@@            Coverage Diff            @@
##             master     #195   +/-   ##
=========================================
  Coverage          ?   60.78%           
=========================================
  Files             ?       40           
  Lines             ?     2637           
  Branches          ?        0           
=========================================
  Hits              ?     1603           
  Misses            ?     1034           
  Partials          ?        0           

Continue to review full report at Codecov.

Legend - Click here to learn more Δ = absolute <relative> (impact), ø = not affected, ? = missing data Powered by Codecov. Last update 4a06b0f...002ca25. Read the comment docs.

PaulDance commented 3 years ago

Yay, it works! I don't have time right now, but I'll add the rest a bit later today.

PaulDance commented 3 years ago

Well you are quite welcome @sunjay! Actually, I should be the one to thank you for guiding me in this first contribution: most of your change suggestions were obviously mistakes on my part... About the point I added to the CONTRIBUTING.md, I'm happy it fits your documentation style, I enjoy writing quite detailed comments, but sometimes I tend to go a bit overboard according to some, so let me know in case I get to contribute again! Finally, I think the Instrumentation address clash entries are just part of Tarpaulin's --verbose output and are completely normal.