[Ironruby-core] Syncing RubySpec and mspec

Jim Deville jdeville at microsoft.com
Wed Jun 30 02:23:02 EDT 2010

So, the tags are of 3 classes:

·         Fails: delete and regenerate (below)

·         Unstable and thread: leave these alone. They indicate ones that are non-deterministic

·         Critical: these indicate specs that cause hangs, process teardown, or corrupt future tests (I don’t think we have any of this last one anymore). These must be looked at one by one to see if they still cause a hang, etc. If they do, leave them. If the test successfully fails or passes, you can delete the critical tag and allow it to run as part of the normal regeneration
For the rest, you are pretty much right. After doing the above (note, probably use grep to find what files to keep (last 2 points) and delete all other files) run the command:
mspec tag -Gcritical -Gunstable -Gthread <Area> for whatever break up of Areas you want. In the past I’ve broken down to folder level (core/array, core/dir, etc.), but you should be good just breaking it down to :core, :lib, :lang, :thread and :cli. This command regenerates the new fails tags and creates the necessary folder structure.

Finally, run mspec ci which should give a clean pass. If you want to parallelize it, you can kick off mspec ci :core, mspec ci :lib, etc and let each section run on its own. These should have clean runs.


From: ironruby-core-bounces at rubyforge.org [mailto:ironruby-core-bounces at rubyforge.org] On Behalf Of Will Green
Sent: Tuesday, June 29, 2010 7:19 PM
To: ironruby-core at rubyforge.org
Subject: Re: [Ironruby-core] Syncing RubySpec and mspec

That did it. I'll have to be more careful with merging that particular file in the future.

Now, how do I go about updating the tags? Is it the following, or do I need to go through some specs manually?

C:\Users\Will\dev\ironruby\External.LCA_RESTRICTED\Languages\IronRuby\mspec>mspec tag rubyspec

BTW, I get a StackOverflowException on of of the specs, which kills the spec run before they all finish. :-/

Will Green

On Tue, Jun 29, 2010 at 7:31 PM, Jim Deville <jdeville at microsoft.com<mailto:jdeville at microsoft.com>> wrote:
Inside of the MSpec in our tree, I have added a filtered method to External.LCA_RESTRICTED/Languages/IronRuby/mspec/mspec/lib/mspec/utils/script.rb (I believe). You’ll need to get that method merged into your branch to user our config.


From: ironruby-core-bounces at rubyforge.org<mailto:ironruby-core-bounces at rubyforge.org> [mailto:ironruby-core-bounces at rubyforge.org<mailto:ironruby-core-bounces at rubyforge.org>] On Behalf Of Will Green
Sent: Monday, June 28, 2010 9:17 PM
To: ironruby-core
Subject: [Ironruby-core] Syncing RubySpec and mspec

Hey all!

I've been talking with Jim via email about helping with syncing IronRuby's copy of RubySpec and mspec with the official repos. I'v started work on pulling in the latest RubySpec changes. These also require the latest mspec. Well, it looks like the default.mspec file is no longer compatible with the latest version of mspec.

My integration branch is here: http://github.com/hotgazpacho/ironruby/tree/from-rubyspec
And the errors I'm getting when running mspec are here: http://gist.github.com/456772

I have very little knowledge of mspec, and googling for the error brings up older posts from this list saying not to use that version of mspec. So, maybe someone who knows more about it could take a look?


Will Green

Ironruby-core mailing list
Ironruby-core at rubyforge.org<mailto:Ironruby-core at rubyforge.org>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://rubyforge.org/pipermail/ironruby-core/attachments/20100630/a11506ab/attachment-0001.html>

More information about the Ironruby-core mailing list