Well it certainly causes problems for me :-)
OK It's only one that fails, I didn't read the message clearly. It's
testLoadModule, the first test.
But the existing Apache service is definitely stopped.
What seems to happen is on the first test, it tries to start the
service, then fails, then tries to stop it and stops the existing
running service.
This seems fairly logical. Are you sure your main apache service is
called Apache2 (the default)?
I've attached the diff between a log of running the tests without the
service started and with the service started (with the hunks for
different port numbers removed).
Regards
David
Nicolas Lehuen wrote:
David,
As I've wrote before, I made a mistake in the documentation,
asstopping Apache is not required, and having a running service has
nothing to do with the test. I don't have the problem even with the
service running. What test are failing on your system ?
Regards,
Nicolas
2005/12/6, David Fraser <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>>:
Another minor point:
6 of the tests fail without the patch if the Apache service was
running
before the tests started.
These all pass with the patch regardless of the status of the Apache
service.
David Fraser wrote:
> Hi Nicolas
>
> Of course, one way of fixing this up is ensuring we use a test
> framework that cleans everything up.
> As it stands, we could potentially have Apache processes left
hanging
> around...
> In fact we could have a service left running that seems to be the
> standard Apache service but is in fact the test service...
> I think the current situation is worse since it actually stops your
> existing Apache service if you leave it running.
> At least with the patch the stuff left hanging around is clearly
> marked as testing mod python.
>
> The alternative would be to test Apache standalone rather than as a
> service, but this would make the tests more difficult to control
>
> David
>
> Nicolas Lehuen wrote:
>
>> David,
>>
>> Though your code seems perfect, I'm a bit worried about
installing a
>> service, even temporary, for testing purposes.
>>
>> It adds another point where the test could fail for setup reasons,
>> and should the test end unexpectedly, the tester's system has an
>> extra service which points to a temporary generated
configuration file.
>>
>> Since everything seems OK without the service layer, I'd rather we
>> keep the test suite as is and not introduce some extra feature
that
>> we'll have to debug later on. Nothings kills me more than debugging
>> the tests :).
>>
>> Regards,
>> Nicolas
>>
>> 2005/12/6, David Fraser < [EMAIL PROTECTED]
<mailto:[EMAIL PROTECTED]> <mailto:[EMAIL PROTECTED]
<mailto:[EMAIL PROTECTED]>>>:
>>
>> Hi Nicolas
>>
>> Interesting, I never even tried running it the same time as
the
>> service,
>> so I can see that actually works now (except for the monitor
>> problem).
>> Yes, my patch fixes the problem with the monitor
>>
>> David
>>
>> Nicolas Lehuen wrote:
>>
>> > Woops, I've marked the issue as resolved since I've
corrected the
>> > documentation, but I've not taken your patch into
account. I'm not
>> > really sure it's required, though, since the only problem is
>> that the
>> > Apache Monitor gets a bit confused by the test server, buit
>> > everything else works correctly. Does your patch fixes
the problem
>> > with the Apache Monitor ?
>> >
>> > Regards,
>> > Nicolas
>> >
>> > 2005/12/6, David Fraser < [EMAIL PROTECTED]
<mailto:[EMAIL PROTECTED]>
>> <mailto:[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>>
<mailto:[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>
>> <mailto: [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>>>>:
>> >
>> > I'm sure this is Win32 only.
>> >
>> > We could even remove the requirement on Win32 by using an
>> alternative
>> > service name that we create and destroy as required.
>> > I've opened a Jira issue with a patch for this:
>> > http://issues.apache.org/jira/browse/MODPYTHON-95
>> >
>> > Graham Dumpleton wrote:
>> >
>> > > I'm a bit confused by:
>> > >
>> > > - The only trick is that you'll have to stop your
Apache
>> server
>> > > before launching
>> > > the test, as the start/stop command can only
apply to
>> one single
>> > > Apache instance.
>> > >
>> > > Does this apply to UNIX as well as Win32?
>> > >
>> > > I ask as I have never bothered to explicitly shut
down any
>> running
>> > > instance of
>> > > Apache, yet haven't noticed any problems with
running the
>> tests. If
>> > > this is a Win32
>> > > specific instruction, you might want to note it as
such.
>> On UNIX
>> > > systems, where
>> > > the web server may be doing real work, people may not
>> want to
>> > shut it
>> > > down just
>> > > to be able to test a new separate version of mod_python
>> that hasn't
>> > > been installed
>> > > yet.
>> > >
>> > > Graham
>> > >
>> > > On 06/12/2005, at 8:02 AM, Nicolas Lehuen wrote:
>> > >
>> > >> Hi David,
>> > >>
>> > >> To follow my old promise, I've just checked in a
bit of
>> > documentation
>> > >> on how to run the test suite, including on Win32.
I've
>> also added a
>> > >> few self-test in the test module, so that the most
>> obvious setup
>> > >> mistakes are notified to the user.
>> > >>
>> > >> Here is the documentation, directly from the
Subversion
>> > repository :
>> > >>
>> > >>
>>
http://svn.apache.org/repos/asf/httpd/mod_python/trunk/test/README
>> > >>
>> > >> This should eventually be converted to TeX and
integrated
>> into the
>> > >> real documentation, but for various reasons this
way is the
>> > quickest
>> > >> way to put it online. It's much better than the
previous
>> README
>> > file
>> > >> anyway (it was basically saying "keep out unless
you know
>> what
>> > you're
>> > >> doing" ;).
>> > >>
>> > >> Hope this helps.
>> > >>
>> > >> Regards,
>> > >> Nicolas
>> > >>
>> > >>
>> > >>
>> > >> 2005/12/5, David Fraser <[EMAIL PROTECTED]
<mailto:[EMAIL PROTECTED]>
>> <mailto: [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>>
>> > <mailto:[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>
<mailto:[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>>>>:
>> > >>
>> > >>>
>> > >>> As afar as I can recall, Nicolas Lehuen is the
only guy
>> who's
>> > been able
>> > >>> to run the tests on win32
>> > >>> Has anybody else been able to? Can we put
together some
>> hints
>> > as to how
>> > >>> to do it?
>> > >>>
>> > >>> David
>> > >>
>> > >
>> >
>> >
>>
>>
>
--- test-service-notstarted.log Wed Dec 07 12:43:42 2005
+++ test-service-started.log Wed Dec 07 12:49:58 2005
@@ -104,7 +104,7 @@
--> Send + process + receive took 0.172 s
* Testing file upload with \r char in a line at position == readBlockSize
- --> Send + process + receive took 0.000 s
+ --> Send + process + receive took 0.016 s
* Skipping the test for The UNIX-HATERS handbook file upload.
To make this test, you need to download ugh.pdf from
http://research.microsoft.com/~daniel/uhh-download.html
@@ -177,14 +177,36 @@
c:/Apache/Apache2/bin/Apache.exe -k stop -f
e:/sjsoft/code/jSuite.py/httpd-python.svn/test\conf\test.conf
The Apache2 service is stopping.
The Apache2 service has stopped.
-................................................
+E...............................................
----------------------------------------------------------------------
-Ran 43 tests in 15.765s
+Ran 43 tests in 16.075s
OK
.
+======================================================================
+ERROR: testLoadModule (__main__.PerInstanceTestCase)
----------------------------------------------------------------------
-Ran 6 tests in 69.469s
+Traceback (most recent call last):
+ File "test.py", line 1788, in testLoadModule
+ f = urllib.urlopen("http://127.0.0.1:%s/" % PORT)
+ File "c:\python\Python2.4.1\lib\urllib.py", line 77, in urlopen
+ return opener.open(url)
+ File "c:\python\Python2.4.1\lib\urllib.py", line 180, in open
+ return getattr(self, name)(url)
+ File "c:\python\Python2.4.1\lib\urllib.py", line 296, in open_http
+ h.endheaders()
+ File "C:\python\python2.4.1\lib\httplib.py", line 794, in endheaders
+ self._send_output()
+ File "C:\python\python2.4.1\lib\httplib.py", line 675, in _send_output
+ self.send(msg)
+ File "C:\python\python2.4.1\lib\httplib.py", line 642, in send
+ self.connect()
+ File "C:\python\python2.4.1\lib\httplib.py", line 626, in connect
+ raise socket.error, msg
+IOError: [Errno socket error] (10061, 'Connection refused')
-OK
+----------------------------------------------------------------------
+Ran 6 tests in 69.746s
+
+FAILED (errors=1)
>>>