etwist/test/unittest_server.py
author Julien Cristau <julien.cristau@logilab.fr>
Tue, 16 Sep 2014 18:01:51 +0200
changeset 9948 798ab1216523
parent 9779 3f1685ac2f16
permissions -rw-r--r--
[test] Make test_undo_api less random The order in which hooks are run is not predictable if they have the same 'order' attribute, which is the case for SetOwnershipHook and SetInitialStateHook. So don't assume in_state will be set before created_by.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
5421
8167de96c523 proper licensing information (LGPL-2.1). Hope I get it right this time.
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 4252
diff changeset
     1
# copyright 2003-2010 LOGILAB S.A. (Paris, FRANCE), all rights reserved.
8167de96c523 proper licensing information (LGPL-2.1). Hope I get it right this time.
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 4252
diff changeset
     2
# contact http://www.logilab.fr/ -- mailto:contact@logilab.fr
8167de96c523 proper licensing information (LGPL-2.1). Hope I get it right this time.
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 4252
diff changeset
     3
#
8167de96c523 proper licensing information (LGPL-2.1). Hope I get it right this time.
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 4252
diff changeset
     4
# This file is part of CubicWeb.
8167de96c523 proper licensing information (LGPL-2.1). Hope I get it right this time.
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 4252
diff changeset
     5
#
8167de96c523 proper licensing information (LGPL-2.1). Hope I get it right this time.
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 4252
diff changeset
     6
# CubicWeb is free software: you can redistribute it and/or modify it under the
8167de96c523 proper licensing information (LGPL-2.1). Hope I get it right this time.
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 4252
diff changeset
     7
# terms of the GNU Lesser General Public License as published by the Free
8167de96c523 proper licensing information (LGPL-2.1). Hope I get it right this time.
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 4252
diff changeset
     8
# Software Foundation, either version 2.1 of the License, or (at your option)
8167de96c523 proper licensing information (LGPL-2.1). Hope I get it right this time.
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 4252
diff changeset
     9
# any later version.
8167de96c523 proper licensing information (LGPL-2.1). Hope I get it right this time.
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 4252
diff changeset
    10
#
5424
8ecbcbff9777 replace logilab-common by CubicWeb in disclaimer
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 5421
diff changeset
    11
# CubicWeb is distributed in the hope that it will be useful, but WITHOUT
5421
8167de96c523 proper licensing information (LGPL-2.1). Hope I get it right this time.
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 4252
diff changeset
    12
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
8167de96c523 proper licensing information (LGPL-2.1). Hope I get it right this time.
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 4252
diff changeset
    13
# FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public License for more
8167de96c523 proper licensing information (LGPL-2.1). Hope I get it right this time.
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 4252
diff changeset
    14
# details.
8167de96c523 proper licensing information (LGPL-2.1). Hope I get it right this time.
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 4252
diff changeset
    15
#
8167de96c523 proper licensing information (LGPL-2.1). Hope I get it right this time.
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 4252
diff changeset
    16
# You should have received a copy of the GNU Lesser General Public License along
8167de96c523 proper licensing information (LGPL-2.1). Hope I get it right this time.
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 4252
diff changeset
    17
# with CubicWeb.  If not, see <http://www.gnu.org/licenses/>.
7565
b355d9dd43df [js/css concat] do not return 404 when resources of a concatenated data URL does not exist, unless in debugmode; closes #1745644
Florent Cayré <florent.cayre@gmail.com>
parents: 6595
diff changeset
    18
b355d9dd43df [js/css concat] do not return 404 when resources of a concatenated data URL does not exist, unless in debugmode; closes #1745644
Florent Cayré <florent.cayre@gmail.com>
parents: 6595
diff changeset
    19
import os, os.path as osp, glob
9533
fa4051e29fbe [etwist] Fix an empty request content after a Twisted processing (closes #3546795).
Damien Garaud <damien.garaud@logilab.fr>
parents: 8752
diff changeset
    20
import urllib
7565
b355d9dd43df [js/css concat] do not return 404 when resources of a concatenated data URL does not exist, unless in debugmode; closes #1745644
Florent Cayré <florent.cayre@gmail.com>
parents: 6595
diff changeset
    21
8752
e19f4bba89cd Add CubicWebRequestBase.content (closes #2742453)
Julien Cristau <julien.cristau@logilab.fr>
parents: 8298
diff changeset
    22
from cubicweb.devtools.httptest import CubicWebServerTC
1543
dca9817bb337 fix use-request-subdomain option behaviour and add tests
Florent <florent@secondweb.fr>
parents:
diff changeset
    23
8752
e19f4bba89cd Add CubicWebRequestBase.content (closes #2742453)
Julien Cristau <julien.cristau@logilab.fr>
parents: 8298
diff changeset
    24
e19f4bba89cd Add CubicWebRequestBase.content (closes #2742453)
Julien Cristau <julien.cristau@logilab.fr>
parents: 8298
diff changeset
    25
class ETwistHTTPTC(CubicWebServerTC):
e19f4bba89cd Add CubicWebRequestBase.content (closes #2742453)
Julien Cristau <julien.cristau@logilab.fr>
parents: 8298
diff changeset
    26
    def test_put_content(self):
9533
fa4051e29fbe [etwist] Fix an empty request content after a Twisted processing (closes #3546795).
Damien Garaud <damien.garaud@logilab.fr>
parents: 8752
diff changeset
    27
        data = {'hip': 'hop'}
fa4051e29fbe [etwist] Fix an empty request content after a Twisted processing (closes #3546795).
Damien Garaud <damien.garaud@logilab.fr>
parents: 8752
diff changeset
    28
        headers = {'Content-Type': 'application/x-www-form-urlencoded'}
fa4051e29fbe [etwist] Fix an empty request content after a Twisted processing (closes #3546795).
Damien Garaud <damien.garaud@logilab.fr>
parents: 8752
diff changeset
    29
        body = urllib.urlencode(data)
8752
e19f4bba89cd Add CubicWebRequestBase.content (closes #2742453)
Julien Cristau <julien.cristau@logilab.fr>
parents: 8298
diff changeset
    30
        response = self.web_request('?vid=put', method='PUT', body=body)
e19f4bba89cd Add CubicWebRequestBase.content (closes #2742453)
Julien Cristau <julien.cristau@logilab.fr>
parents: 8298
diff changeset
    31
        self.assertEqual(body, response.body)
9533
fa4051e29fbe [etwist] Fix an empty request content after a Twisted processing (closes #3546795).
Damien Garaud <damien.garaud@logilab.fr>
parents: 8752
diff changeset
    32
        response = self.web_request('?vid=put', method='POST', body=body,
fa4051e29fbe [etwist] Fix an empty request content after a Twisted processing (closes #3546795).
Damien Garaud <damien.garaud@logilab.fr>
parents: 8752
diff changeset
    33
                                    headers=headers)
fa4051e29fbe [etwist] Fix an empty request content after a Twisted processing (closes #3546795).
Damien Garaud <damien.garaud@logilab.fr>
parents: 8752
diff changeset
    34
        self.assertEqual(body, response.body)
8752
e19f4bba89cd Add CubicWebRequestBase.content (closes #2742453)
Julien Cristau <julien.cristau@logilab.fr>
parents: 8298
diff changeset
    35
8270
38648b051199 [test] more standalone test
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 7791
diff changeset
    36
if __name__ == '__main__':
38648b051199 [test] more standalone test
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 7791
diff changeset
    37
    from logilab.common.testlib import unittest_main
38648b051199 [test] more standalone test
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 7791
diff changeset
    38
    unittest_main()