Test .net code with ruby BDD libraries


#1

Good morning,

I would try to test my .net code using a BDD approach.

I believe Ruby has a clean syntax and great libraries to do BDD so I
would
use one them on IronRuby.

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?

Many thanks in advance

Claudio

Claudio M.

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


#2

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


#3

I posted a way of testing .net code with ruby a few months back. It
incorporates autotest also.
http://www.curtismitchell.com/2b/?p=15

Sent from my mobile


#4

http://msdn.microsoft.com/en-us/magazine/dd434651.aspx

Met vriendelijke groeten - Best regards - Salutations
Ivan Porto C.
GSM: +32.486.787.582
Blog: http://flanders.co.nz
Twitter: http://twitter.com/casualjim

On Sat, Feb 7, 2009 at 6:02 PM, Claudio M.


#5

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: removed_email_address@domain.invalid
[removed_email_address@domain.invalid] On Behalf Of Thibaut Barrère
[removed_email_address@domain.invalid]
Sent: Saturday, February 07, 2009 10:10 AM
To: removed_email_address@domain.invalid
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 M.

http://testdrivendevelopment.wordpress.com/

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


#6

It’s exactly what I’m looking for

Thanks

Claudio

ps.

Thanks again for coming at ALT.NET conf!

From: removed_email_address@domain.invalid
[mailto:removed_email_address@domain.invalid] On Behalf Of Ivan Porto
Carrero
Sent: sabato 7 febbraio 2009 18.15
To: removed_email_address@domain.invalid
Subject: Re: [Ironruby-core] test .net code with ruby BDD libraries

http://msdn.microsoft.com/en-us/magazine/dd434651.aspx

Met vriendelijke groeten - Best regards - Salutations
Ivan Porto C.
GSM: +32.486.787.582
Blog: http://flanders.co.nz
Twitter: http://twitter.com/casualjim

On Sat, Feb 7, 2009 at 6:02 PM, Claudio M.
removed_email_address@domain.invalid wrote:

Good morning,

I would try to test my .net code using a BDD approach.

I believe Ruby has a clean syntax and great libraries to do BDD so I
would use one them on IronRuby.

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?

Many thanks in advance

Claudio

Claudio M.

http://testdrivendevelopment.wordpress.com/

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


#7

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

  <set language="Ruby" option="LibraryPaths"

value=“c:\ruby\lib\ruby\site_ruby\1.8;c:\ruby\lib\ruby\site_ruby;c:\ruby\l
ib\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 © 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: removed_email_address@domain.invalid
[mailto:removed_email_address@domain.invalid] On Behalf Of Jimmy
Schementi
Sent: sabato 7 febbraio 2009 21.14
To: removed_email_address@domain.invalid
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-silverli
ght.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: removed_email_address@domain.invalid
[removed_email_address@domain.invalid] On Behalf Of Thibaut Barrère
[removed_email_address@domain.invalid]
Sent: Saturday, February 07, 2009 10:10 AM
To: removed_email_address@domain.invalid
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 M.

http://testdrivendevelopment.wordpress.com/

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


#8

Hi Claudio

try this:

require ‘rubygems’
require ‘bacon’

On Sun, Feb 8, 2009 at 6:22 PM, Claudio M.


#9

Hi Ivan,

now I get this error L

C:\Projects\IronRuby>ir

IronRuby 1.0.0.0 on .NET 2.0.50727.3053

Copyright © 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: removed_email_address@domain.invalid
[mailto:removed_email_address@domain.invalid] On Behalf Of Ivan Porto
Carrero
Sent: domenica 8 febbraio 2009 18.50
To: removed_email_address@domain.invalid
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 M.
removed_email_address@domain.invalid 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

  <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 © 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: removed_email_address@domain.invalid
[mailto:removed_email_address@domain.invalid] On Behalf Of Jimmy
Schementi
Sent: sabato 7 febbraio 2009 21.14

To: removed_email_address@domain.invalid
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: removed_email_address@domain.invalid
[removed_email_address@domain.invalid] On Behalf Of Thibaut Barrère
[removed_email_address@domain.invalid]
Sent: Saturday, February 07, 2009 10:10 AM
To: removed_email_address@domain.invalid
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 M.

http://testdrivendevelopment.wordpress.com/

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


Ironruby-core mailing list
removed_email_address@domain.invalid
http://rubyforge.org/mailman/listinfo/ironruby-core


#10

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 M. removed_email_address@domain.invalid


#11

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

From: removed_email_address@domain.invalid
[mailto:removed_email_address@domain.invalid] On Behalf Of Stefan D.
Sent: lunedì 9 febbraio 2009 20.32
To: removed_email_address@domain.invalid
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 M. removed_email_address@domain.invalid

Hi Ivan,

now I get this error L

C:\Projects\IronRuby>ir

IronRuby 1.0.0.0 on .NET 2.0.50727.3053

Copyright © 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: removed_email_address@domain.invalid
[mailto:removed_email_address@domain.invalid] On Behalf Of Ivan Porto
Carrero
Sent: domenica 8 febbraio 2009 18.50

To: removed_email_address@domain.invalid
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 M.
removed_email_address@domain.invalid
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

  <set language="Ruby" option="LibraryPaths"

value=“c:\ruby\lib\ruby\site_ruby\1.8;c:\ruby\lib\ruby\site_ruby;c:\ruby\l
ib\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 © 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: removed_email_address@domain.invalid
[mailto:removed_email_address@domain.invalid] On Behalf Of Jimmy
Schementi
Sent: sabato 7 febbraio 2009 21.14

To: removed_email_address@domain.invalid
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-silverli
ght.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: removed_email_address@domain.invalid
[removed_email_address@domain.invalid] On Behalf Of Thibaut Barrère
[removed_email_address@domain.invalid]
Sent: Saturday, February 07, 2009 10:10 AM
To: removed_email_address@domain.invalid
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 M.

http://testdrivendevelopment.wordpress.com/

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


Ironruby-core mailing list
removed_email_address@domain.invalid
http://rubyforge.org/mailman/listinfo/ironruby-core


Ironruby-core mailing list
removed_email_address@domain.invalid
http://rubyforge.org/mailman/listinfo/ironruby-core


#12

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:

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:\tools\ironruby\merlin\main\Languages\Ruby\Libraries.LCA_RESTRICTED\Zlib\zlib.cs:517:in
inflate' rubygems.rb:395:ininflate’
spec_fetcher.rb:77:in fetch_spec' spec_fetcher.rb:64:infetch’

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:infetch’
dependency_installer.rb:75:in find_gems_with_sources' dependency_installer.rb:162:infind_spec_by_name_and_version’
dependency_installer.rb:206:in install' install_command.rb:70:inexecute’

c:\tools\ironruby\merlin\main\Languages\Ruby\Libraries.LCA_RESTRICTED\Extensions\IListOps.cs:700:in
each' install_command.rb:45:inexecute’
command.rb:129:in invoke' command_manager.rb:86:inprocess_args’
command_manager.rb:74:in run' gem_runner.rb:25:inrun’
: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 C.
    » ir
    IronRuby 1.0.0.0 on .NET 2.0.50727.3053
    Copyright © Microsoft Corporation. All rights reserved.

require ‘rubygems’
=> true

require ‘bacon’
=> true

On Mon, Feb 9, 2009 at 10:56 PM, Jimmy S. <


#13

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: removed_email_address@domain.invalid
[mailto:removed_email_address@domain.invalid] On Behalf Of Claudio
Maccari
Sent: Monday, February 09, 2009 1:19 PM
To: removed_email_address@domain.invalid
Subject: Re: [Ironruby-core] test .net code with ruby BDD libraries

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

From: removed_email_address@domain.invalid
[mailto:removed_email_address@domain.invalid] On Behalf Of Stefan D.
Sent: lunedì 9 febbraio 2009 20.32
To: removed_email_address@domain.invalid
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 M.
<removed_email_address@domain.invalidmailto:removed_email_address@domain.invalid>

Hi Ivan,

now I get this error :frowning:

C:\Projects\IronRuby>ir

IronRuby 1.0.0.0 on .NET 2.0.50727.3053

Copyright © 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:
removed_email_address@domain.invalidmailto:removed_email_address@domain.invalid
[mailto:removed_email_address@domain.invalidmailto:removed_email_address@domain.invalid]
On Behalf Of Ivan Porto C.
Sent: domenica 8 febbraio 2009 18.50

To: removed_email_address@domain.invalidmailto:removed_email_address@domain.invalid
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 M.
<removed_email_address@domain.invalidmailto:removed_email_address@domain.invalid> 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

  <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 © 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:
removed_email_address@domain.invalidmailto:removed_email_address@domain.invalid
[mailto:removed_email_address@domain.invalidmailto:removed_email_address@domain.invalid]
On Behalf Of Jimmy S.
Sent: sabato 7 febbraio 2009 21.14

To: removed_email_address@domain.invalidmailto:removed_email_address@domain.invalid
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:
removed_email_address@domain.invalidmailto:removed_email_address@domain.invalid
[removed_email_address@domain.invalidmailto:removed_email_address@domain.invalid]
On Behalf Of Thibaut Barrère
[removed_email_address@domain.invalidmailto:removed_email_address@domain.invalid]
Sent: Saturday, February 07, 2009 10:10 AM
To: removed_email_address@domain.invalidmailto:removed_email_address@domain.invalid
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 M.

http://testdrivendevelopment.wordpress.com/

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


Ironruby-core mailing list
removed_email_address@domain.invalidmailto:removed_email_address@domain.invalid
http://rubyforge.org/mailman/listinfo/ironruby-core


Ironruby-core mailing list
removed_email_address@domain.invalidmailto:removed_email_address@domain.invalid
http://rubyforge.org/mailman/listinfo/ironruby-core