[Ironruby-core] test .net code with ruby BDD libraries

Unnikrishnan Nair ksunair at yahoo.com
Tue Feb 10 08:49:43 EST 2009


Hi Ivan,

It is a very good documentation of what we have now. I have been playing with Ironruby and becon couldn't make it work. I am going to give it a try with your suggestion.

Thanks for the help.

--- On Tue, 2/10/09, Ivan Porto Carrero <ivan at flanders.co.nz> wrote:

From: Ivan Porto Carrero <ivan at flanders.co.nz>
Subject: Re: [Ironruby-core] test .net code with ruby BDD libraries
To: ironruby-core at rubyforge.org
Date: Tuesday, February 10, 2009, 1:41 AM

Hi Claudio

What I did was the following:

I cloned ironruby from git
then i build it using rake 

I use this .cmd file in the git root folder which is C:\tools\ironruby in my case

@ECHO OFF

cd merlin/main/Languages/Ruby
ECHO "compiling debug version"
rake compile
cd ../../../..
ECHO "All done"

I then change the line in ir.exe.config that sets the paths to read like this:


<set language="Ruby" option="LibraryPaths" value="..\..\Languages\Ruby\libs;..\..\..\External\Languages\Ruby\redist-libs\ruby\site_ruby\1.8;..\..\..\External\Languages\Ruby\redist-libs\ruby\site_ruby;..\..\..\External\Languages\Ruby\redist-libs\ruby\1.8" />


I also added the path C:\tools\ironruby\Merlin\Main\Languages\Ruby\Scripts to the PATH variable (that gives you access to igem, irake etc.)

That should get ironruby gems to work you can test it by doing igem --version or igem env


At this point rubygems seems to be broken in ironruby I get an error 

+ C:\Users\Ivan Porto Carrero
» igem install bacon -V --backtrace --debug
HEAD 200 OK: http://gems.rubyforge.org/latest_specs.4.8

GET 200 OK: http://gems.rubyforge.org/quick/Marshal.4.8/bacon-1.1.0.gemspec.rz
ERROR:  While executing gem ... (TypeError)
    allocator undefined for Zlib::Inflate

        c:\tools\ironruby\merlin\main\Languages\Ruby\Libraries.LCA_RESTRICTED\Zlib\zlib.cs:517:in `inflate'
        rubygems.rb:395:in `inflate'
        spec_fetcher.rb:77:in `fetch_spec'
        spec_fetcher.rb:64:in `fetch'

        c:\tools\ironruby\merlin\main\Languages\Ruby\Libraries.LCA_RESTRICTED\Extensions\IListOps.cs:700:in `each'
        c:\tools\ironruby\merlin\main\Languages\Ruby\Libraries.LCA_RESTRICTED\Builtins\Enumerable.cs:88:in `map'

        spec_fetcher.rb:61:in `fetch'
        dependency_installer.rb:75:in `find_gems_with_sources'
        dependency_installer.rb:162:in `find_spec_by_name_and_version'
        dependency_installer.rb:206:in `install'

        install_command.rb:70:in `execute'
        c:\tools\ironruby\merlin\main\Languages\Ruby\Libraries.LCA_RESTRICTED\Extensions\IListOps.cs:700:in `each'
        install_command.rb:45:in `execute'

        command.rb:129:in `invoke'
        command_manager.rb:86:in `process_args'
        command_manager.rb:74:in `run'
        gem_runner.rb:25:in `run'
        :0

so to make bacon work you install it with MRI.

Then you can copy the folder bacon-1.1.0 from the folders gems, doc, specification in C:\ruby\lib\ruby\gems\1.8
to the folders gems, doc, specification in C:\tools\ironruby\merlin\external\languages\ruby\ruby-1.8.6\lib\ironruby\gems\1.8


When I did that I could do:

+ C:\Users\Ivan Porto Carrero
» ir
IronRuby 1.0.0.0 on .NET 2.0.50727.3053
Copyright (c) Microsoft Corporation. All rights reserved.

>>> require 'rubygems'

=> true
>>> require 'bacon'
=> true





On Mon, Feb 9, 2009 at 10:56 PM, Jimmy Schementi <Jimmy.Schementi at microsoft.com> wrote:















Sounds like rubygems isn't working correctly on your setup
of IronRuby. It's complaining about not finding rbconfig, which gems
needs to load. It doesn't have anything to do with bacon, so for now
avoid loading it as a gem.

 

We don't have good documentation about how to get gems
working in custom build of IronRuby, but that's something I'll be
adding shortly. Ivan has gone down the path of getting this set up already, so
maybe he can give you some pointers. Ivan?

 

~js

 







From:
ironruby-core-bounces at rubyforge.org
[mailto:ironruby-core-bounces at rubyforge.org] On Behalf Of Claudio
Maccari

Sent: Monday, February 09, 2009 1:19 PM

To: ironruby-core at rubyforge.org

Subject: Re: [Ironruby-core] test .net code with ruby BDD libraries





 

This works but I would understand why require
'bacon' does not.

 

 



From: ironruby-core-bounces at rubyforge.org
[mailto:ironruby-core-bounces at rubyforge.org] On Behalf Of Stefan Dobrev

Sent: lunedì 9 febbraio 2009 20.32

To: ironruby-core at rubyforge.org

Subject: Re: [Ironruby-core] test .net code with ruby BDD libraries



 

You can just
require the file with its full path. 



In your case:





 





>>>
require 'C:\Ruby\lib\ruby\gems\1.8\gems\bacon-1.1.0\lib\bacon.rb'



 



2009/2/9 Claudio
Maccari <claudio.maccari at gmail.com>





Hi
Ivan,

now
I get this error L

 

C:\Projects\IronRuby>ir



IronRuby
1.0.0.0 on .NET 2.0.50727.3053

Copyright
(c) Microsoft Corporation. All rights reserved.

 



>>>
require 'rubygems'

IronRuby.Libraries:0:in
`require': no such file to load -- rbconfig (LoadError)

       
from :0

       
from IronRuby.Libraries:0:in `require'

       
from :0

 

>>> 

 

Thanks

Claudio

 



From: ironruby-core-bounces at rubyforge.org [mailto:ironruby-core-bounces at rubyforge.org]
On Behalf Of Ivan Porto Carrero

Sent: domenica 8 febbraio 2009 18.50







To: ironruby-core at rubyforge.org

Subject: Re: [Ironruby-core] test .net code with ruby BDD libraries











 

Hi Claudio



try this:



require 'rubygems'

require 'bacon' 







On Sun, Feb 8, 2009 at 6:22 PM,
Claudio Maccari <claudio.maccari at gmail.com>
wrote:





Hi
Jimmy,

 

I
would try bacon cause it looks simple but I can't get it working.

I
installed bacon using gem and now is located in
C:\ruby\lib\ruby\gems\1.8\gems\bacon-1.1.0

I edited
my ir.exe.config file as follow

 

<options>

     
<set language="Ruby" option="LibraryPaths"
value="c:\ruby\lib\ruby\site_ruby\1.8\;c:\ruby\lib\ruby\site_ruby\;c:\ruby\lib\ruby\1.8\;c:\ruby\lib\ruby\gems\1.8\gems\"
/>

   
</options>

 

But
I get this error

 

C:\Projects\IronRuby>ir.exe

IronRuby
1.0.0.0 on .NET 2.0.50727.3053

Copyright
(c) Microsoft Corporation. All rights reserved.

 

>>>
require 'bacon'

IronRuby.Libraries:0:in
`require': no such file to load -- bacon (LoadError)

       
from :0

 

>>> 

 

What's 
wrong ?

Thanks

Claudio

 





From: ironruby-core-bounces at rubyforge.org [mailto:ironruby-core-bounces at rubyforge.org]
On Behalf Of Jimmy Schementi

Sent: sabato 7 febbraio 2009 21.14







To: ironruby-core at rubyforge.org

Subject: Re: [Ironruby-core] test .net code with ruby BDD libraries













 



I've using bacon (http://github.com/chneukirchen/bacon) to test C#
Silverlight code, and it works great on the desktop as well. It's definitely
the smallest of the bdd libraries, and feels fastest, but I've got no data to
support that (yet). 





 





http://blog.jimmy.schementi.com/2009/01/dynamic-language-testing-in-silverlight.html






 





However,
don't expect any mocking libraries to work. You can't mock C# types, and
have those changes be visible to other C# code. We need to write a ruby wrapper
around existing C# mocking libraries, so let me know if anyone is interested in
doing so.





 





~js





 























From: ironruby-core-bounces at rubyforge.org
[ironruby-core-bounces at rubyforge.org]
On Behalf Of Thibaut Barrère [thibaut.barrere at gmail.com]

Sent: Saturday, February 07, 2009 10:10 AM

To: ironruby-core at rubyforge.org

Subject: Re: [Ironruby-core] test .net code with ruby BDD libraries









Hi, 










Has someone already try to test .net code with
ruby DBB library?

If the answer is yes, is there somewhere a
sample/post/article of this work?









Did not use RSpec yet (as it was
reported to be slow), but MSpec (BDD) and Test::Unit (can be BDD too) did the
trick.





 





Check out this for a few hints and
thoughts: http://blog.logeek.fr/2008/12/1/thoughts-on-ironruby-and-dotnet-testing





 





cheers,





 





-- Thibaut










 

Many thanks in advance

Claudio

 

 

Claudio Maccari

http://testdrivendevelopment.wordpress.com/

 

"I have the simplest taste. I am always
satisfied with the best"- Oscar Wilde

 

 

 

 

 







_______________________________________________

Ironruby-core mailing list

Ironruby-core at rubyforge.org

http://rubyforge.org/mailman/listinfo/ironruby-core





 













_______________________________________________

Ironruby-core mailing list

Ironruby-core at rubyforge.org

http://rubyforge.org/mailman/listinfo/ironruby-core



 











_______________________________________________

Ironruby-core mailing list

Ironruby-core at rubyforge.org

http://rubyforge.org/mailman/listinfo/ironruby-core



 













_______________________________________________

Ironruby-core mailing list

Ironruby-core at rubyforge.org

http://rubyforge.org/mailman/listinfo/ironruby-core





-----Inline Attachment Follows-----

_______________________________________________
Ironruby-core mailing list
Ironruby-core at rubyforge.org
http://rubyforge.org/mailman/listinfo/ironruby-core
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://rubyforge.org/pipermail/ironruby-core/attachments/20090210/6ded892c/attachment-0001.html>


More information about the Ironruby-core mailing list