You are viewing a plain text version of this content. The canonical link for it is here.
Posted to mod_python-commits@quetz.apache.org by gr...@apache.org on 2002/12/02 22:53:12 UTC

cvs commit: httpd-python/test/htdocs tests.py

grisha      2002/12/02 13:53:11

  Modified:    src      serverobject.c
               src/include mpversion.h
               test     test.py
               test/htdocs tests.py
  Log:
  Fixed server.register_cleanup() which was left in its 2.x state
  
  Revision  Changes    Path
  1.14      +10 -20    httpd-python/src/serverobject.c
  
  Index: serverobject.c
  ===================================================================
  RCS file: /home/cvs/httpd-python/src/serverobject.c,v
  retrieving revision 1.13
  retrieving revision 1.14
  diff -u -r1.13 -r1.14
  --- serverobject.c	8 Nov 2002 00:15:11 -0000	1.13
  +++ serverobject.c	2 Dec 2002 21:53:11 -0000	1.14
  @@ -117,30 +117,20 @@
       cleanup_info *ci;
       PyObject *handler = NULL;
       PyObject *data = NULL;
  -    PyObject *Req = NULL;
       requestobject *req = NULL;
   
  -    if (! PyArg_ParseTuple(args, "OO|O", &Req, &handler, &data))
  +    if (! PyArg_ParseTuple(args, "OO|O", &req, &handler, &data))
   	return NULL; 
   
  -    if (! PyObject_HasAttrString(Req, "_req")) {
  -	PyErr_SetString(PyExc_ValueError, "first argument must be a Request object");
  -	return NULL;
  +    if (! MpRequest_Check(req)) {
  +        PyErr_SetString(PyExc_ValueError, 
  +                        "first argument must be a request object");
  +        return NULL;
       }
  -    else {
  -
  -	req = (requestobject *) PyObject_GetAttrString(Req, "_req");
  -
  -	if (! MpRequest_Check(req)) {
  -	    PyErr_SetString(PyExc_ValueError, 
  -			    "first argument must be a request object");
  -	    return NULL;
  -	}
  -	else if(!PyCallable_Check(handler)) {
  -	    PyErr_SetString(PyExc_ValueError, 
  -			    "second argument must be a callable object");
  -	    return NULL;
  -	}
  +    else if(!PyCallable_Check(handler)) {
  +        PyErr_SetString(PyExc_ValueError, 
  +                        "second argument must be a callable object");
  +        return NULL;
       }
       
       ci = (cleanup_info *)malloc(sizeof(cleanup_info));
  
  
  
  1.15      +2 -2      httpd-python/src/include/mpversion.h
  
  Index: mpversion.h
  ===================================================================
  RCS file: /home/cvs/httpd-python/src/include/mpversion.h,v
  retrieving revision 1.14
  retrieving revision 1.15
  diff -u -r1.14 -r1.15
  --- mpversion.h	26 Nov 2002 21:24:13 -0000	1.14
  +++ mpversion.h	2 Dec 2002 21:53:11 -0000	1.15
  @@ -1,5 +1,5 @@
   #define MPV_MAJOR 3
   #define MPV_MINOR 0
  -#define MPV_PATCH 1
  +#define MPV_PATCH 2
   #define MPV_BUILD 0
  -#define MPV_STRING "3.0.1"
  +#define MPV_STRING "3.0.2"
  
  
  
  1.21      +28 -1     httpd-python/test/test.py
  
  Index: test.py
  ===================================================================
  RCS file: /home/cvs/httpd-python/test/test.py,v
  retrieving revision 1.20
  retrieving revision 1.21
  diff -u -r1.20 -r1.21
  --- test.py	29 Oct 2002 21:52:18 -0000	1.20
  +++ test.py	2 Dec 2002 21:53:11 -0000	1.21
  @@ -776,12 +776,39 @@
   
           self.failUnless(result.wasSuccessful())
   
  +    def test_srv_register_cleanup(self):
  +
  +        print "\n* Testing server.register_cleanup()..."
  +
  +        c = Directory(DOCUMENT_ROOT,
  +                      SetHandler("python-program"),
  +                      PythonHandler("tests::srv_register_cleanup"),
  +                      PythonDebug("On"))
  +
  +        self.makeConfig(str(c))
  +
  +        self.startHttpd()
  +
  +        f = urllib.urlopen("http://127.0.0.1:%s/tests.py" % PORT)
  +        f.read()
  +        f.close()
  +
  +        self.stopHttpd()
  +
  +        # see what's in the log now
  +        time.sleep(1)
  +        f = open(os.path.join(SERVER_ROOT, "logs/error_log"))
  +        log = f.read()
  +        f.close()
  +        if log.find("test ok") == -1:
  +            self.fail("Could not find test message in error_log")
   
   def suite():
   
       mpTestSuite = unittest.TestSuite()
       mpTestSuite.addTest(PerInstanceTestCase("testLoadModule"))
       mpTestSuite.addTest(PerInstanceTestCase("testPerRequestTests"))
  +    mpTestSuite.addTest(PerInstanceTestCase("test_srv_register_cleanup"))
       return mpTestSuite
   
   tr = unittest.TextTestRunner()
  
  
  
  1.20      +9 -1      httpd-python/test/htdocs/tests.py
  
  Index: tests.py
  ===================================================================
  RCS file: /home/cvs/httpd-python/test/htdocs/tests.py,v
  retrieving revision 1.19
  retrieving revision 1.20
  diff -u -r1.19 -r1.20
  --- tests.py	29 Oct 2002 21:52:18 -0000	1.19
  +++ tests.py	2 Dec 2002 21:53:11 -0000	1.20
  @@ -505,6 +505,14 @@
   
       data.log_error(data.cleanup_data)
   
  +def srv_register_cleanup(req):
  +
  +    req.cleanup_data = "test ok"
  +    req.server.register_cleanup(req, cleanup, req)
  +    req.write("registered server cleanup that will write to log")
  +
  +    return apache.OK
  +
   def util_fieldstorage(req):
   
       from mod_python import util