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

Investigate Using RSpec's Specs #30

Closed
wied03 opened this issue Aug 13, 2015 · 11 comments
Closed

Investigate Using RSpec's Specs #30

wied03 opened this issue Aug 13, 2015 · 11 comments

Comments

@wied03
Copy link
Contributor

wied03 commented Aug 13, 2015

Instead of the current Rake task setup, consider using RSpec's specs (and overriding the run_command approach they use). Then only the opal-rspec specific specs to maintain are the async ones.

@elia
Copy link
Member

elia commented Aug 13, 2015

That would be awesome

@wied03
Copy link
Contributor Author

wied03 commented Aug 19, 2015

@elia - Started @ https://github.com/wied03/opal-rspec/tree/features/rspec_specs, based on the code @ #33. I think doing this first will make migrating to 3.2/3.3 easier since we'll know more about whether our foundation is solid.

@wied03
Copy link
Contributor Author

wied03 commented Aug 25, 2015

@elia - Finally got the browser to at least run rspec-core's specs with several exclusions and patches. Thus far this has produced 1 fix and better documentation about what's not supported.

735 examples, 384 failures, 1 pending

Still more work to do, but it's a start

@wied03
Copy link
Contributor Author

wied03 commented Aug 31, 2015

@elia - Making slow but steady progress on the rspec-core specs, which are probably much tougher than the expectations or mocks specs. The effort has already produced 2 fixes for Opal itself plus 2 issues in opal-rspec I didn't know about.

I think getting the rspec-core, expectations, and mocks specs running (with unsupportable items filtered) for version 0.5.0 is a good goal. What do you think?

@elia
Copy link
Member

elia commented Sep 2, 2015

I think you're doing a tremendous job!

@wied03
Copy link
Contributor Author

wied03 commented Oct 5, 2015

@elia - I'm down to 14 unexpected failures on the rspec-core specs and 265 (out of 1509 passing) for rspec-expectations specs.

Given the amount of time to get to that point (and what I would consider a big improvement over 0.4's setup), I think it's best to spend less time trying to fix everything and instead just get to a stopping point by documenting what works. By that I mean put tests that really ought to pass in a filter/bugs/** file and then put what we know doesn't work in the README. Then this can get released (as 0.5) and people can benefit from the improvements that have already been made while the remaining pieces are whittled away.

Sound good?

@wied03
Copy link
Contributor Author

wied03 commented Oct 9, 2015

I went ahead with that approach, but I did try and fix issues when I could. Now the core, support, and expectation specs all "pass" with some exclusions. Working on the mock specs now.

@elia
Copy link
Member

elia commented Oct 9, 2015

w00t!

@wied03
Copy link
Contributor Author

wied03 commented Oct 9, 2015

Right now mocks is a pain because any_instance_of wipes out the entire Example class. More generally though, if nothing else, we'll now have a much better idea (and I've been updating the README) about what works and what doesn't. Plus rspec uses so many aspects of the Ruby language that it caused all of these PRs I've been submitting to be teased out.

@wied03
Copy link
Contributor Author

wied03 commented Oct 20, 2015

Investigation is over, it's done :)

@wied03 wied03 closed this as completed Oct 20, 2015
@elia
Copy link
Member

elia commented Oct 20, 2015

🎩

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

2 participants