[Pharo-dev] test failures in downloaded Green CI image
In the process of tying to review the slices for a few issues, I downloaded build #30500 Pharo3.0-win.zip from [1]. (Normally I use files.pharo.org but I wanted to ensure it was a GREEN build.) However before loading the slice to review I double-checked the baseline test results by running all tests from TestRunner. I had presumed all tests would be green but was surprised by some failures in the result. Well it maybe it has something to do with environment, but it would be nice for it to be clean to help isoalte any errors introduced by the slice under review. Before I log anything on Fogbugz in case someone can advise anything obvious, the Test Runner result is shown below [2]. My platform is 64-bit Windows 7 Home Premium Service Pack 1. I'll try to follow up with more specific info on each line. cheers -ben [1] https://ci.inria.fr/pharo/job/Pharo-3.0-Update-Step-4-Publish/566/ [2] 11426 run, 11386 passes, 12 skipped, 26 expected failures, 12 failures, 2 errors, 0 unexpected passes FAILURES MetacelloRepositorySqueakCommonTestCase #testAsRepositorySpecFor MetacelloRepositorySqueakCommonTestCase #testDirectoryRepository MetacelloRepositorySqueakCommonTestCase #testFileTreeRepository RPackageReadOnlyCompleteSetupTest #testAddTag RPackageReadOnlyCompleteSetupTest #testAddTagNames KMDispatcherTestCase #testAttach RPackageSetTest #testPolymorphicWithPackageInfo BehaviorTest #testBehaviorRespectsPolymorphismWithTraitBehavior BehaviorTest #testLocalMethodsOfTheClassShouldNotBeRepeatedInItsTraits ProcessTest #testHighPriorityOverridesWaitTime ReleaseTest #testLocalMethodsOfTheClassShouldNotBeRepeatedInItsTraits ReleaseTest #testUndeclared ERRORS MetacelloTutorialTestCase #testProjectRef14 ZnServerTests #testRequestLineTooLong
Re: [Pharo-dev] test failures in downloaded Green CI image - ZnServerTests #testRequestLineTooLong
b...@openinworld.com wrote: In the process of tying to review the slices for a few issues, I downloaded build #30500 Pharo3.0-win.zip from [1]. (Normally I use files.pharo.org but I wanted to ensure it was a GREEN build.) However before loading the slice to review I double-checked the baseline test results by running all tests from TestRunner. I had presumed all tests would be green but was surprised by some failures in the result. Well it maybe it has something to do with environment, but it would be nice for it to be clean to help isoalte any errors introduced by the slice under review. Before I log anything on Fogbugz in case someone can advise anything obvious, the Test Runner result is shown below [2]. My platform is 64-bit Windows 7 Home Premium Service Pack 1. I'll try to follow up with more specific info on each line. cheers -ben [1] https://ci.inria.fr/pharo/job/Pharo-3.0-Update-Step-4-Publish/566/ [2] FAILURE ZnServerTests #testRequestLineTooLong I extracted #testRequestLineTooLong to something I can evaluate from Workspace... | numX url fudge | fudge := 0. numX := ZnConstants maximumLineLength - fudge . (url := ZnUrl fromString: 'http://localhost:1704/') addPathSegment: #echo; addPathSegment: (String new: numX withAll: $X). ZnClient new beOneShot; logToTranscript; url: url; get; response That fails with initial fudge factor of 0 - with 'ZnUnknownHttpVerion.' Here is the Transcript (including logging from ZnServer)... 2013-10-20 00:45:40 489094 D Executing request/response loop 2013-10-20 00:45:40 505527 I Wrote a ZnRequest(GET /echo/...X) 2013-10-20 00:45:40 505527 D Sent headers Accept: */* User-Agent: Zinc HTTP Components 1.0 Connection: close Host: localhost:1704 2013-10-20 00:45:40 489094 D ZnLineTooLong bad request while parsing 2013-10-20 00:45:40 489094 I Wrote a ZnResponse(400 Bad Request text/plain;charset=utf-8 27B) 2013-10-20 00:45:40 489094 D Closing streamZnStatusLine With a fudge factor of 9 it still fails, but with 10 it succeeds. Interestingly, inspect 'url' shows... http://localhost:1704/echo/XX...etc ...and 10 characters = 1704/echo/ but then correlation does not equal cause. How should we proceed? cheers -ben
Re: [Pharo-dev] test failures in downloaded Green CI image - ZnServerTests #testRequestLineTooLong
Ben, The goal of the test is to confirm that the server returns an error (refuses a request) when any line, in this case the first so called request line, it too long. Hence the artificially constructed URL. Of course, if you make it shorter, at one point it will be short enough so that it no longer fails - but that defeats the purpose of the test ;-) Now, the problem with this test and 3 other ones that are related, checking the reaction to other limits, is that they pass on Mac and Linux, but fail (randomly) on Windows, when ZdcSocketStream is used instead of SocketStream, currently the default. I have already looked into this, but up to now I failed to find the problem. The Socket class uses a number of primitives which have totally different implementations on the 3 platforms. Yes, I could use some help, but this is not easy. I also think there already is an issue for this, but I can't find it. Sven On 19 Oct 2013, at 18:54, b...@openinworld.com wrote: b...@openinworld.com wrote: In the process of tying to review the slices for a few issues, I downloaded build #30500 Pharo3.0-win.zip from [1]. (Normally I use files.pharo.org but I wanted to ensure it was a GREEN build.) However before loading the slice to review I double-checked the baseline test results by running all tests from TestRunner. I had presumed all tests would be green but was surprised by some failures in the result. Well it maybe it has something to do with environment, but it would be nice for it to be clean to help isoalte any errors introduced by the slice under review. Before I log anything on Fogbugz in case someone can advise anything obvious, the Test Runner result is shown below [2]. My platform is 64-bit Windows 7 Home Premium Service Pack 1. I'll try to follow up with more specific info on each line. cheers -ben [1] https://ci.inria.fr/pharo/job/Pharo-3.0-Update-Step-4-Publish/566/ [2] FAILURE ZnServerTests #testRequestLineTooLong I extracted #testRequestLineTooLong to something I can evaluate from Workspace... | numX url fudge | fudge := 0. numX := ZnConstants maximumLineLength - fudge . (url := ZnUrl fromString: 'http://localhost:1704/') addPathSegment: #echo; addPathSegment: (String new: numX withAll: $X). ZnClient new beOneShot; logToTranscript; url: url; get; response That fails with initial fudge factor of 0 - with 'ZnUnknownHttpVerion.' Here is the Transcript (including logging from ZnServer)... 2013-10-20 00:45:40 489094 D Executing request/response loop 2013-10-20 00:45:40 505527 I Wrote a ZnRequest(GET /echo/...X) 2013-10-20 00:45:40 505527 D Sent headers Accept: */* User-Agent: Zinc HTTP Components 1.0 Connection: close Host: localhost:1704 2013-10-20 00:45:40 489094 D ZnLineTooLong bad request while parsing 2013-10-20 00:45:40 489094 I Wrote a ZnResponse(400 Bad Request text/plain;charset=utf-8 27B) 2013-10-20 00:45:40 489094 D Closing streamZnStatusLine With a fudge factor of 9 it still fails, but with 10 it succeeds. Interestingly, inspect 'url' shows... http://localhost:1704/echo/XX...etc ...and 10 characters = 1704/echo/ but then correlation does not equal cause. How should we proceed? cheers -ben