Files
@ 89efedac4e6c
Branch filter:
Location: kallithea/rhodecode/tests/test_libs.py - annotation
89efedac4e6c
3.9 KiB
text/x-python
2012 copyrights
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 | fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 df04752daa64 cf51bbfb120e fced98787f40 89efedac4e6c 2afe9320d5e6 fced98787f40 2afe9320d5e6 2afe9320d5e6 2afe9320d5e6 2afe9320d5e6 2afe9320d5e6 2afe9320d5e6 2afe9320d5e6 2afe9320d5e6 2afe9320d5e6 2afe9320d5e6 2afe9320d5e6 2afe9320d5e6 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 fced98787f40 54687aa00724 54687aa00724 54687aa00724 54687aa00724 54687aa00724 54687aa00724 54687aa00724 54687aa00724 54687aa00724 | # -*- coding: utf-8 -*-
"""
rhodecode.tests.test_libs
~~~~~~~~~~~~~~~~~~~~~~~~~
Package for testing various lib/helper functions in rhodecode
:created_on: Jun 9, 2011
:copyright: (C) 2011-2012 Marcin Kuzminski <marcin@python-works.com>
:license: GPLv3, see COPYING for more details.
"""
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
import unittest
from rhodecode.tests import *
proto = 'http'
TEST_URLS = [
('%s://127.0.0.1' % proto, ['%s://' % proto, '127.0.0.1'],
'%s://127.0.0.1' % proto),
('%s://marcink@127.0.0.1' % proto, ['%s://' % proto, '127.0.0.1'],
'%s://127.0.0.1' % proto),
('%s://marcink:pass@127.0.0.1' % proto, ['%s://' % proto, '127.0.0.1'],
'%s://127.0.0.1' % proto),
('%s://127.0.0.1:8080' % proto, ['%s://' % proto, '127.0.0.1', '8080'],
'%s://127.0.0.1:8080' % proto),
('%s://domain.org' % proto, ['%s://' % proto, 'domain.org'],
'%s://domain.org' % proto),
('%s://user:pass@domain.org:8080' % proto, ['%s://' % proto, 'domain.org',
'8080'],
'%s://domain.org:8080' % proto),
]
proto = 'https'
TEST_URLS += [
('%s://127.0.0.1' % proto, ['%s://' % proto, '127.0.0.1'],
'%s://127.0.0.1' % proto),
('%s://marcink@127.0.0.1' % proto, ['%s://' % proto, '127.0.0.1'],
'%s://127.0.0.1' % proto),
('%s://marcink:pass@127.0.0.1' % proto, ['%s://' % proto, '127.0.0.1'],
'%s://127.0.0.1' % proto),
('%s://127.0.0.1:8080' % proto, ['%s://' % proto, '127.0.0.1', '8080'],
'%s://127.0.0.1:8080' % proto),
('%s://domain.org' % proto, ['%s://' % proto, 'domain.org'],
'%s://domain.org' % proto),
('%s://user:pass@domain.org:8080' % proto, ['%s://' % proto, 'domain.org',
'8080'],
'%s://domain.org:8080' % proto),
]
class TestLibs(unittest.TestCase):
def test_uri_filter(self):
from rhodecode.lib import uri_filter
for url in TEST_URLS:
self.assertEqual(uri_filter(url[0]), url[1])
def test_credentials_filter(self):
from rhodecode.lib import credentials_filter
for url in TEST_URLS:
self.assertEqual(credentials_filter(url[0]), url[2])
def test_str2bool(self):
from rhodecode.lib import str2bool
test_cases = [
('t', True),
('true', True),
('y', True),
('yes', True),
('on', True),
('1', True),
('Y', True),
('yeS', True),
('Y', True),
('TRUE', True),
('T', True),
('False', False),
('F', False),
('FALSE', False),
('0', False),
('-1', False),
('', False), ]
for case in test_cases:
self.assertEqual(str2bool(case[0]), case[1])
def test_mention_extractor(self):
from rhodecode.lib import extract_mentioned_users
sample = ("@first hi there @marcink here's my email marcin@email.com "
"@lukaszb check it pls @ ttwelve @D[] @one@two@three "
"@MARCIN @maRCiN @2one_more22")
s = ['2one_more22', 'D', 'MARCIN', 'first', 'lukaszb',
'maRCiN', 'marcink', 'one']
self.assertEqual(s, extract_mentioned_users(sample))
|