[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: [pygame] Tests crashing Automatic Build page + Compiling PyGame on Windows



Lenard,

>> if it goes into the wiki then it could be corrupted by someone else

Sorry, I meant to say a link on the wiki to where it is now would be handy.

>> Did you install MSYS-DTK-1.0.1?

Yes, I downloaded the MSYS developers tool kit, msysDTK-1.0.1.exe and installed it.

>> Are the tests for revision 1376? Nothing causes problems like running the wrong tests.

Yeah, the tests were run from the svn co directory. The tests were for the svn HEAD at the time, 1376, which I had just built and installed.I even made sure to destroy old pyc files.

>> The subprocess module works better but requires pywin32 be installed for Windows.

Cheers. I'm sorry if popen4 caused any problems for you.


This is really odd, I'm nuking my site-packages/pygame directory, building and installing from HEAD and then running the HEAD tests, but I'm still have crashing issues.

What's the difference between mine and your's and marcus's setup?

Compiling issues come to mind but then I recall I had the same problem after downloading your 1376 msi. I nuked the pygame directory before installing that also.

----------------

I realized that the surflock_test.py error that was taking down run_tests.py (for me anyway) was just that I needed to have numpy installed. Then the suite finished but with these errors.

======================================================================
ERROR: see if the destination surface can be passed in to use.
----------------------------------------------------------------------
Traceback (most recent call last):
File "D:\Losty\PyGame\trunk\test\transform_test.py", line 114, in test_scale_d
estination
   s2 = pygame.transform.smoothscale(s, (64,64))
ValueError: Only 24-bit or 32-bit surfaces can be smoothly scaled

======================================================================
FAIL: test_average_surfaces (transform_test.TransformTest)
----------------------------------------------------------------------
Traceback (most recent call last):
File "D:\Losty\PyGame\trunk\test\transform_test.py", line 239, in test_average
_surfaces
   self.assertEqual(sr.get_at((0,0)), (10,15,70,255))
AssertionError: (8, 12, 66, 255) != (10, 15, 70, 255)

======================================================================
FAIL: test_threshold_surface (transform_test.TransformTest)
----------------------------------------------------------------------
Traceback (most recent call last):
File "D:\Losty\PyGame\trunk\test\transform_test.py", line 145, in test_thresho
ld_surface
   self.assertEqual(num_threshold_pixels, s1.get_height() * s1.get_width())
AssertionError: 0 != 1024

----------------------------------------------------------------------
Ran 264 tests in 5.703s

FAILED (failures=2, errors=1)


Then running transform_test.py independently:

D:\Losty\PyGame\trunk\test>transform_test.py
.....
----------------------------------------------------------------------
Ran 5 tests in 0.016s

OK


_What the_?

Any ideas guys? What am I doing wrong?





Lenard Lindstrom wrote:
Finally I can get to this posting:

Nicholas Dudfield wrote:
Greetings all.

Computer Died
=============

Sorry to hear that.

[snip]


Compiling Pygame
================

The instructions for building pygame on windows using MSYS involved downloading and compiling dependencies. It was not until afterwards that I found out that prebuilts were available. It would probably be helpful to link to them somewhere on the wiki.
Done.

It was not until afterwards that I found out that prebuilts were available. I will do that myself once my computer is operational again. In fact there is a note on the wiki, "*note* We should have a download with everything included.
It's available at http://www3.telus.net/len_l/pygame/ , but has never been copied to the pygame site. If it goes into the wiki then it could be corrupted by someone else. So it should be on the download page.

As well as patches for each one that we need. "
No patches needed.


Anyway, I went to the pains of downloading all the dependencies and compiling. The msys_build_deps.py script works very nicely, the only issue I had was that SMPEG wouldn't compile. I just got a copy of the config and dll from the page with the prebuilts.

This was the error message from the script:

$ msys_build_deps.py SMPEG

=== Starting build ===
aclocal: configure.in: 133: macro `AM_PATH_SDL' not found in library
aclocal: configure.in: 219: macro `AM_PATH_GTK' not found in library
'./autogen.sh' failed to run properly
Build aborted: The build for SMPEG failed with code 1
Did you install MSYS-DTK-1.0.1?


Failing Tests
=============

I built revision 1376 and running run_tests.py here crashes before completion of all the tests. I traced it to surflock_test.py. I renamed it temporarily so it wouldn't be picked up by run_tests.py and then the suite ran to completion, showing failures in transform_test.py. Bizarrely, I ran that test discretely and it passed.

Are the tests for revision 1376? Nothing causes problems like running the wrong tests.

I think surflock_test.py crashed the automated builds for http://thorbrian.com/pygame/builds.php

I saw that builds for revision 1376 were recently posted to the list with a note saying it passed all unit tests. I downloaded it, removed my existing pygame install, deleting the whole pygame folder, and installed it. Same surflock_test.py crash, same transform_test.py failures and errors.

After a false start by setting SDL_VIDEODRIVER to an invalid value I can confirm that all tests pass for me as of revision 1382.

The surflock_test.py crash actually stalls the test suite and it reports nothing; no F, E or OK.

[snip test results]


We need to make the build page + test runner more resistant to tests that will possibly crash everything.

That last attempt to catch image__save_gl_surface_test.py crashes using popen4 caused problems. For me it would sometimes hang. When I fixed the save gl surface bug the automated build site failed to recognize a passing test for the Window builds. The subprocess module works better but requires pywin32 be installed for Windows.