Running rack tests on Windows (both 1.9.3 and 2.0.0)

53 views
Skip to first unread message

Luis Lavena

unread,
Nov 11, 2012, 8:20:55 AM11/11/12
to rack-...@googlegroups.com
Hello,

I've started to look into Rack (and its tests) on Windows just to ensure things are running as much properly as possible.

I found a few hardcoded values to temporary files (/tmp/rack_sendfile) that is blocking spec_sendfile.rb from executing.

Perhaps it will be good to use the system temporary directory instead?

Beyond that, and without installing any particular handlers, rack tests results in:

ruby 1.9.3p327 (2012-11-10) [i386-mingw32]
583 tests, 1761 assertions, 4 failures, 2 errors

ruby 2.0.0dev (2012-11-10 trunk 37612) [i386-mingw32]
583 tests, 1761 assertions, 5 failures, 2 errors

ruby 2.0.0dev (2012-11-10 trunk 37612) [x64-mingw32]
583 tests, 1761 assertions, 5 failures, 2 errors

See gist for full details:


Do you think tests are incorrectly assuming details of the platform (test is not prepared to run on Windows) or do you think the failures are possible rack issues with Windows?

How would you like to proceed? I wanted to get the conversation going before invest more time on this.

Thank you.
--
Luis Lavena

James Tucker

unread,
Nov 11, 2012, 1:59:40 PM11/11/12
to rack-...@googlegroups.com

On Nov 11, 2012, at 5:20 AM, Luis Lavena <luisl...@gmail.com> wrote:

> Hello,
>
> I've started to look into Rack (and its tests) on Windows just to ensure things are running as much properly as possible.

Awesome, thanks!

> I found a few hardcoded values to temporary files (/tmp/rack_sendfile) that is blocking spec_sendfile.rb from executing.

Those sound easy, if you get an issue open I'll make sure to get it done before I roll the next release.

> Perhaps it will be good to use the system temporary directory instead?

Agreed.

> Beyond that, and without installing any particular handlers, rack tests results in:
>
> ruby 1.9.3p327 (2012-11-10) [i386-mingw32]
> 583 tests, 1761 assertions, 4 failures, 2 errors
>
> ruby 2.0.0dev (2012-11-10 trunk 37612) [i386-mingw32]
> 583 tests, 1761 assertions, 5 failures, 2 errors
>
> ruby 2.0.0dev (2012-11-10 trunk 37612) [x64-mingw32]
> 583 tests, 1761 assertions, 5 failures, 2 errors
>
> See gist for full details:
>
> https://gist.github.com/4054864
>
> Do you think tests are incorrectly assuming details of the platform (test is not prepared to run on Windows) or do you think the failures are possible rack issues with Windows?

The multipart tests involve loading binary fixtures from the repo. They will become corrupted if you use autocrlf in your git settings (I VERY VERY strongly recommend against such settings for exactly this reason). It's also possible we're missing some binary file modes in the read calls, or there are additional encoding concerns. I'll take a deeper look. Again an issue on Github will help me remember to do so.

> How would you like to proceed? I wanted to get the conversation going before invest more time on this.

This is excellent feedback, if you have more time to prepare some patches, that's awesome, but if you just want to create some issues with this information, that's great too.

Many thanks

Konstantin Haase

unread,
Nov 11, 2012, 6:25:45 PM11/11/12
to rack-...@googlegroups.com
In related news: Work on windows support for Travis CI has started. It might take a bit, though.

Konstantin

Luis Lavena

unread,
Nov 12, 2012, 11:11:31 AM11/12/12
to rack-...@googlegroups.com
On Sunday, November 11, 2012 8:25:54 PM UTC-3, Konstantin Haase wrote:
In related news: Work on windows support for Travis CI has started. It might take a bit, though.


Please email me more details or include me in early alpha to help you crash the thing, or I will remove you from my friends list.

Really, I will do that.

:-D

--
Luis Lavena

Tim Moore

unread,
Jan 31, 2013, 1:59:06 AM1/31/13
to rack-...@googlegroups.com
Luis,

I've submitted a pull request to rack that fixes a race condition when starting two servers simultaneously with the same pid file.


I don't have easy access to a Windows machine to make sure that the fix works correctly there. Would you be able to advise?

Thanks,
Tim Moore

James Tucker

unread,
Feb 6, 2013, 9:02:11 PM2/6/13
to rack-...@googlegroups.com
Provided your git settings are not modifying file data, you should be close to a green run now.
Reply all
Reply to author
Forward
0 new messages