web/test/unittest_views_basetemplates.py
author Julien Cristau <julien.cristau@logilab.fr>
Wed, 06 Jan 2016 11:47:08 +0100
changeset 11080 245f440b814a
parent 9847 b23c90721351
permissions -rw-r--r--
[devtools] fix get_bounds Say an attribute has two IntervalBoundConstraints, one with minvalue=0 and the other with maxvalue=10 (not literally, or that could be a single constraint, but e.g. with references to other attributes). We don't want to override the minvalue of the former with None just because the latter happens last in the constraints list. This doesn't fix the case where two constraints both have a min or a max value. Meh.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
9847
b23c90721351 [webtests/basetemplates] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 9042
diff changeset
     1
# copyright 2003-2014 LOGILAB S.A. (Paris, FRANCE), all rights reserved.
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
     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/>.
8976
aeb7d400ee92 [view] return HTML5 doctype. Closes #2869426
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 8544
diff changeset
    18
2773
b2530e3e0afb [testlib] #345052 and #344207: major test lib refactoring/cleanup + update usage
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 2650
diff changeset
    19
from cubicweb.devtools.testlib import CubicWebTC
8976
aeb7d400ee92 [view] return HTML5 doctype. Closes #2869426
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 8544
diff changeset
    20
from cubicweb.devtools.htmlparser import XMLValidator
1776
4be367276874 adapt login box message to allow-email-login configuration
Florent <florent@secondweb.fr>
parents:
diff changeset
    21
4be367276874 adapt login box message to allow-email-login configuration
Florent <florent@secondweb.fr>
parents:
diff changeset
    22
2773
b2530e3e0afb [testlib] #345052 and #344207: major test lib refactoring/cleanup + update usage
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 2650
diff changeset
    23
class LogFormTemplateTC(CubicWebTC):
1776
4be367276874 adapt login box message to allow-email-login configuration
Florent <florent@secondweb.fr>
parents:
diff changeset
    24
4be367276874 adapt login box message to allow-email-login configuration
Florent <florent@secondweb.fr>
parents:
diff changeset
    25
    def _login_labels(self):
8976
aeb7d400ee92 [view] return HTML5 doctype. Closes #2869426
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 8544
diff changeset
    26
        valid = self.content_type_validators.get('text/html', XMLValidator)()
9042
6cc13a0a9145 [dbapi] makes anonymous_connection a computed property
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 8976
diff changeset
    27
        req = self.requestcls(self.vreg, url='login')
6cc13a0a9145 [dbapi] makes anonymous_connection a computed property
Pierre-Yves David <pierre-yves.david@logilab.fr>
parents: 8976
diff changeset
    28
        page = valid.parse_string(self.vreg['views'].main_template(req, 'login'))
1776
4be367276874 adapt login box message to allow-email-login configuration
Florent <florent@secondweb.fr>
parents:
diff changeset
    29
        return page.find_tag('label')
4be367276874 adapt login box message to allow-email-login configuration
Florent <florent@secondweb.fr>
parents:
diff changeset
    30
4be367276874 adapt login box message to allow-email-login configuration
Florent <florent@secondweb.fr>
parents:
diff changeset
    31
    def test_label(self):
4be367276874 adapt login box message to allow-email-login configuration
Florent <florent@secondweb.fr>
parents:
diff changeset
    32
        self.set_option('allow-email-login', 'yes')
6340
470d8e828fda [test] update test to unittest2 api (still using lgc.testlib though)
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 5628
diff changeset
    33
        self.assertEqual(self._login_labels(), ['login or email', 'password'])
1776
4be367276874 adapt login box message to allow-email-login configuration
Florent <florent@secondweb.fr>
parents:
diff changeset
    34
        self.set_option('allow-email-login', 'no')
6340
470d8e828fda [test] update test to unittest2 api (still using lgc.testlib though)
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 5628
diff changeset
    35
        self.assertEqual(self._login_labels(), ['login', 'password'])
5620
8bff6aae4623 [test] add missing __main__ as expected by apycot pyunit checker
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 5584
diff changeset
    36
8269
80d37fb56312 [web templates] fix invalid html in main-no-top template; closes #2174806
Florent Cayré <florent.cayre@logilab.fr>
parents: 6340
diff changeset
    37
80d37fb56312 [web templates] fix invalid html in main-no-top template; closes #2174806
Florent Cayré <florent.cayre@logilab.fr>
parents: 6340
diff changeset
    38
class MainNoTopTemplateTC(CubicWebTC):
80d37fb56312 [web templates] fix invalid html in main-no-top template; closes #2174806
Florent Cayré <florent.cayre@logilab.fr>
parents: 6340
diff changeset
    39
80d37fb56312 [web templates] fix invalid html in main-no-top template; closes #2174806
Florent Cayré <florent.cayre@logilab.fr>
parents: 6340
diff changeset
    40
    def test_valid_xhtml(self):
9847
b23c90721351 [webtests/basetemplates] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 9042
diff changeset
    41
        with self.admin_access.web_request() as req:
b23c90721351 [webtests/basetemplates] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents: 9042
diff changeset
    42
            self.view('index', template='main-no-top', req=req)
8269
80d37fb56312 [web templates] fix invalid html in main-no-top template; closes #2174806
Florent Cayré <florent.cayre@logilab.fr>
parents: 6340
diff changeset
    43
80d37fb56312 [web templates] fix invalid html in main-no-top template; closes #2174806
Florent Cayré <florent.cayre@logilab.fr>
parents: 6340
diff changeset
    44
5620
8bff6aae4623 [test] add missing __main__ as expected by apycot pyunit checker
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 5584
diff changeset
    45
if __name__ == '__main__':
5623
a01aa5b26e66 [test] update test to follow recent navigation/facets fixes
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 5620
diff changeset
    46
    from logilab.common.testlib import unittest_main
5628
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents: 5623
diff changeset
    47
    unittest_main()