Mercurial > kallithea
annotate rhodecode/tests/test_libs.py @ 3774:60335b702a00 beta
invalidation: don't create CacheInvalidation records on startup
Creating the records early gave an advantage before lightweight was introduced.
With lightweight it is no longer necessary.
The records will be created on demand anyway and there is no reason to create and
maintain them before they are used.
author | Mads Kiilerich <madski@unity3d.com> |
---|---|
date | Wed, 03 Apr 2013 15:56:12 +0200 |
parents | 71860d0737e7 |
children |
rev | line source |
---|---|
1372
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
1 # -*- coding: utf-8 -*- |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
2 """ |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
3 rhodecode.tests.test_libs |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
4 ~~~~~~~~~~~~~~~~~~~~~~~~~ |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
5 |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
6 |
1416
df04752daa64
test env update
Marcin Kuzminski <marcin@python-works.com>
parents:
1372
diff
changeset
|
7 Package for testing various lib/helper functions in rhodecode |
1818
cf51bbfb120e
auto white-space removal
Marcin Kuzminski <marcin@python-works.com>
parents:
1713
diff
changeset
|
8 |
1372
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
9 :created_on: Jun 9, 2011 |
1824
89efedac4e6c
2012 copyrights
Marcin Kuzminski <marcin@python-works.com>
parents:
1818
diff
changeset
|
10 :copyright: (C) 2011-2012 Marcin Kuzminski <marcin@python-works.com> |
1532
2afe9320d5e6
updated docstrings
Marcin Kuzminski <marcin@python-works.com>
parents:
1416
diff
changeset
|
11 :license: GPLv3, see COPYING for more details. |
1372
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
12 """ |
1532
2afe9320d5e6
updated docstrings
Marcin Kuzminski <marcin@python-works.com>
parents:
1416
diff
changeset
|
13 # This program is free software: you can redistribute it and/or modify |
2afe9320d5e6
updated docstrings
Marcin Kuzminski <marcin@python-works.com>
parents:
1416
diff
changeset
|
14 # it under the terms of the GNU General Public License as published by |
2afe9320d5e6
updated docstrings
Marcin Kuzminski <marcin@python-works.com>
parents:
1416
diff
changeset
|
15 # the Free Software Foundation, either version 3 of the License, or |
2afe9320d5e6
updated docstrings
Marcin Kuzminski <marcin@python-works.com>
parents:
1416
diff
changeset
|
16 # (at your option) any later version. |
2afe9320d5e6
updated docstrings
Marcin Kuzminski <marcin@python-works.com>
parents:
1416
diff
changeset
|
17 # |
2afe9320d5e6
updated docstrings
Marcin Kuzminski <marcin@python-works.com>
parents:
1416
diff
changeset
|
18 # This program is distributed in the hope that it will be useful, |
2afe9320d5e6
updated docstrings
Marcin Kuzminski <marcin@python-works.com>
parents:
1416
diff
changeset
|
19 # but WITHOUT ANY WARRANTY; without even the implied warranty of |
2afe9320d5e6
updated docstrings
Marcin Kuzminski <marcin@python-works.com>
parents:
1416
diff
changeset
|
20 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
2afe9320d5e6
updated docstrings
Marcin Kuzminski <marcin@python-works.com>
parents:
1416
diff
changeset
|
21 # GNU General Public License for more details. |
2afe9320d5e6
updated docstrings
Marcin Kuzminski <marcin@python-works.com>
parents:
1416
diff
changeset
|
22 # |
2afe9320d5e6
updated docstrings
Marcin Kuzminski <marcin@python-works.com>
parents:
1416
diff
changeset
|
23 # You should have received a copy of the GNU General Public License |
2afe9320d5e6
updated docstrings
Marcin Kuzminski <marcin@python-works.com>
parents:
1416
diff
changeset
|
24 # along with this program. If not, see <http://www.gnu.org/licenses/>. |
2790
3c0ae44557c4
more py2.5 compatibility patches
Marcin Kuzminski <marcin@python-works.com>
parents:
2753
diff
changeset
|
25 from __future__ import with_statement |
2317
c4d8ed624728
Fixed tests for new i18n changes
Marcin Kuzminski <marcin@python-works.com>
parents:
2201
diff
changeset
|
26 import unittest |
c4d8ed624728
Fixed tests for new i18n changes
Marcin Kuzminski <marcin@python-works.com>
parents:
2201
diff
changeset
|
27 import datetime |
2753
e34a6b1eb594
added test for alternative gravatar
Marcin Kuzminski <marcin@python-works.com>
parents:
2674
diff
changeset
|
28 import hashlib |
e34a6b1eb594
added test for alternative gravatar
Marcin Kuzminski <marcin@python-works.com>
parents:
2674
diff
changeset
|
29 import mock |
2317
c4d8ed624728
Fixed tests for new i18n changes
Marcin Kuzminski <marcin@python-works.com>
parents:
2201
diff
changeset
|
30 from rhodecode.tests import * |
1372
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
31 |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
32 proto = 'http' |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
33 TEST_URLS = [ |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
34 ('%s://127.0.0.1' % proto, ['%s://' % proto, '127.0.0.1'], |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
35 '%s://127.0.0.1' % proto), |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
36 ('%s://marcink@127.0.0.1' % proto, ['%s://' % proto, '127.0.0.1'], |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
37 '%s://127.0.0.1' % proto), |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
38 ('%s://marcink:pass@127.0.0.1' % proto, ['%s://' % proto, '127.0.0.1'], |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
39 '%s://127.0.0.1' % proto), |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
40 ('%s://127.0.0.1:8080' % proto, ['%s://' % proto, '127.0.0.1', '8080'], |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
41 '%s://127.0.0.1:8080' % proto), |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
42 ('%s://domain.org' % proto, ['%s://' % proto, 'domain.org'], |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
43 '%s://domain.org' % proto), |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
44 ('%s://user:pass@domain.org:8080' % proto, ['%s://' % proto, 'domain.org', |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
45 '8080'], |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
46 '%s://domain.org:8080' % proto), |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
47 ] |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
48 |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
49 proto = 'https' |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
50 TEST_URLS += [ |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
51 ('%s://127.0.0.1' % proto, ['%s://' % proto, '127.0.0.1'], |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
52 '%s://127.0.0.1' % proto), |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
53 ('%s://marcink@127.0.0.1' % proto, ['%s://' % proto, '127.0.0.1'], |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
54 '%s://127.0.0.1' % proto), |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
55 ('%s://marcink:pass@127.0.0.1' % proto, ['%s://' % proto, '127.0.0.1'], |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
56 '%s://127.0.0.1' % proto), |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
57 ('%s://127.0.0.1:8080' % proto, ['%s://' % proto, '127.0.0.1', '8080'], |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
58 '%s://127.0.0.1:8080' % proto), |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
59 ('%s://domain.org' % proto, ['%s://' % proto, 'domain.org'], |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
60 '%s://domain.org' % proto), |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
61 ('%s://user:pass@domain.org:8080' % proto, ['%s://' % proto, 'domain.org', |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
62 '8080'], |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
63 '%s://domain.org:8080' % proto), |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
64 ] |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
65 |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
66 |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
67 class TestLibs(unittest.TestCase): |
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
68 |
3385
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
69 @parameterized.expand(TEST_URLS) |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
70 def test_uri_filter(self, test_url, expected, expected_creds): |
2109 | 71 from rhodecode.lib.utils2 import uri_filter |
3385
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
72 self.assertEqual(uri_filter(test_url), expected) |
1372
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
73 |
3385
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
74 @parameterized.expand(TEST_URLS) |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
75 def test_credentials_filter(self, test_url, expected, expected_creds): |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
76 from rhodecode.lib.utils2 import credentials_filter |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
77 self.assertEqual(credentials_filter(test_url), expected_creds) |
1372
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
78 |
3385
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
79 @parameterized.expand([('t', True), |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
80 ('true', True), |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
81 ('y', True), |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
82 ('yes', True), |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
83 ('on', True), |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
84 ('1', True), |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
85 ('Y', True), |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
86 ('yeS', True), |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
87 ('Y', True), |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
88 ('TRUE', True), |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
89 ('T', True), |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
90 ('False', False), |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
91 ('F', False), |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
92 ('FALSE', False), |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
93 ('0', False), |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
94 ('-1', False), |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
95 ('', False) |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
96 ]) |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
97 def test_str2bool(self, str_bool, expected): |
2109 | 98 from rhodecode.lib.utils2 import str2bool |
3385
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
99 self.assertEqual(str2bool(str_bool), expected) |
1372
fced98787f40
Added tests for RhodeCode libs
Marcin Kuzminski <marcin@python-works.com>
parents:
diff
changeset
|
100 |
1713
54687aa00724
Tests updates, Session refactoring
Marcin Kuzminski <marcin@python-works.com>
parents:
1532
diff
changeset
|
101 def test_mention_extractor(self): |
2109 | 102 from rhodecode.lib.utils2 import extract_mentioned_users |
2201
ea5ff843b200
#426 fixed mention extracting regex
Marcin Kuzminski <marcin@python-works.com>
parents:
2109
diff
changeset
|
103 sample = ( |
ea5ff843b200
#426 fixed mention extracting regex
Marcin Kuzminski <marcin@python-works.com>
parents:
2109
diff
changeset
|
104 "@first hi there @marcink here's my email marcin@email.com " |
ea5ff843b200
#426 fixed mention extracting regex
Marcin Kuzminski <marcin@python-works.com>
parents:
2109
diff
changeset
|
105 "@lukaszb check @one_more22 it pls @ ttwelve @D[] @one@two@three " |
ea5ff843b200
#426 fixed mention extracting regex
Marcin Kuzminski <marcin@python-works.com>
parents:
2109
diff
changeset
|
106 "@MARCIN @maRCiN @2one_more22 @john please see this http://org.pl " |
ea5ff843b200
#426 fixed mention extracting regex
Marcin Kuzminski <marcin@python-works.com>
parents:
2109
diff
changeset
|
107 "@marian.user just do it @marco-polo and next extract @marco_polo " |
ea5ff843b200
#426 fixed mention extracting regex
Marcin Kuzminski <marcin@python-works.com>
parents:
2109
diff
changeset
|
108 "user.dot hej ! not-needed maril@domain.org" |
ea5ff843b200
#426 fixed mention extracting regex
Marcin Kuzminski <marcin@python-works.com>
parents:
2109
diff
changeset
|
109 ) |
ea5ff843b200
#426 fixed mention extracting regex
Marcin Kuzminski <marcin@python-works.com>
parents:
2109
diff
changeset
|
110 |
ea5ff843b200
#426 fixed mention extracting regex
Marcin Kuzminski <marcin@python-works.com>
parents:
2109
diff
changeset
|
111 s = sorted([ |
ea5ff843b200
#426 fixed mention extracting regex
Marcin Kuzminski <marcin@python-works.com>
parents:
2109
diff
changeset
|
112 'first', 'marcink', 'lukaszb', 'one_more22', 'MARCIN', 'maRCiN', 'john', |
ea5ff843b200
#426 fixed mention extracting regex
Marcin Kuzminski <marcin@python-works.com>
parents:
2109
diff
changeset
|
113 'marian.user', 'marco-polo', 'marco_polo' |
ea5ff843b200
#426 fixed mention extracting regex
Marcin Kuzminski <marcin@python-works.com>
parents:
2109
diff
changeset
|
114 ], key=lambda k: k.lower()) |
1713
54687aa00724
Tests updates, Session refactoring
Marcin Kuzminski <marcin@python-works.com>
parents:
1532
diff
changeset
|
115 self.assertEqual(s, extract_mentioned_users(sample)) |
2317
c4d8ed624728
Fixed tests for new i18n changes
Marcin Kuzminski <marcin@python-works.com>
parents:
2201
diff
changeset
|
116 |
3644
71860d0737e7
- age tests cannot be dynamic, there are cases when age calculation
Marcin Kuzminski <marcin@python-works.com>
parents:
3405
diff
changeset
|
117 @parameterized.expand([ |
71860d0737e7
- age tests cannot be dynamic, there are cases when age calculation
Marcin Kuzminski <marcin@python-works.com>
parents:
3405
diff
changeset
|
118 (dict(), u'just now'), |
71860d0737e7
- age tests cannot be dynamic, there are cases when age calculation
Marcin Kuzminski <marcin@python-works.com>
parents:
3405
diff
changeset
|
119 (dict(seconds= -1), u'1 second ago'), |
71860d0737e7
- age tests cannot be dynamic, there are cases when age calculation
Marcin Kuzminski <marcin@python-works.com>
parents:
3405
diff
changeset
|
120 (dict(seconds= -60 * 2), u'2 minutes ago'), |
71860d0737e7
- age tests cannot be dynamic, there are cases when age calculation
Marcin Kuzminski <marcin@python-works.com>
parents:
3405
diff
changeset
|
121 (dict(hours= -1), u'1 hour ago'), |
71860d0737e7
- age tests cannot be dynamic, there are cases when age calculation
Marcin Kuzminski <marcin@python-works.com>
parents:
3405
diff
changeset
|
122 (dict(hours= -24), u'1 day ago'), |
71860d0737e7
- age tests cannot be dynamic, there are cases when age calculation
Marcin Kuzminski <marcin@python-works.com>
parents:
3405
diff
changeset
|
123 (dict(hours= -24 * 5), u'5 days ago'), |
71860d0737e7
- age tests cannot be dynamic, there are cases when age calculation
Marcin Kuzminski <marcin@python-works.com>
parents:
3405
diff
changeset
|
124 (dict(months= -1), u'1 month ago'), |
71860d0737e7
- age tests cannot be dynamic, there are cases when age calculation
Marcin Kuzminski <marcin@python-works.com>
parents:
3405
diff
changeset
|
125 (dict(months= -1, days= -2), u'1 month and 2 days ago'), |
71860d0737e7
- age tests cannot be dynamic, there are cases when age calculation
Marcin Kuzminski <marcin@python-works.com>
parents:
3405
diff
changeset
|
126 (dict(years= -1, months= -1), u'1 year and 1 month ago'), |
71860d0737e7
- age tests cannot be dynamic, there are cases when age calculation
Marcin Kuzminski <marcin@python-works.com>
parents:
3405
diff
changeset
|
127 ]) |
71860d0737e7
- age tests cannot be dynamic, there are cases when age calculation
Marcin Kuzminski <marcin@python-works.com>
parents:
3405
diff
changeset
|
128 def test_age(self, age_args, expected): |
2317
c4d8ed624728
Fixed tests for new i18n changes
Marcin Kuzminski <marcin@python-works.com>
parents:
2201
diff
changeset
|
129 from rhodecode.lib.utils2 import age |
3261
54a439edaf99
fixed AGE funtion for future dates, testa are now cleaner with dateutil usage
Marcin Kuzminski <marcin@python-works.com>
parents:
3132
diff
changeset
|
130 from dateutil import relativedelta |
3644
71860d0737e7
- age tests cannot be dynamic, there are cases when age calculation
Marcin Kuzminski <marcin@python-works.com>
parents:
3405
diff
changeset
|
131 n = datetime.datetime(year=2012, month=5, day=17) |
3261
54a439edaf99
fixed AGE funtion for future dates, testa are now cleaner with dateutil usage
Marcin Kuzminski <marcin@python-works.com>
parents:
3132
diff
changeset
|
132 delt = lambda *args, **kwargs: relativedelta.relativedelta(*args, **kwargs) |
3644
71860d0737e7
- age tests cannot be dynamic, there are cases when age calculation
Marcin Kuzminski <marcin@python-works.com>
parents:
3405
diff
changeset
|
133 self.assertEqual(age(n + delt(**age_args), now=n), expected) |
71860d0737e7
- age tests cannot be dynamic, there are cases when age calculation
Marcin Kuzminski <marcin@python-works.com>
parents:
3405
diff
changeset
|
134 |
71860d0737e7
- age tests cannot be dynamic, there are cases when age calculation
Marcin Kuzminski <marcin@python-works.com>
parents:
3405
diff
changeset
|
135 @parameterized.expand([ |
3261
54a439edaf99
fixed AGE funtion for future dates, testa are now cleaner with dateutil usage
Marcin Kuzminski <marcin@python-works.com>
parents:
3132
diff
changeset
|
136 |
3644
71860d0737e7
- age tests cannot be dynamic, there are cases when age calculation
Marcin Kuzminski <marcin@python-works.com>
parents:
3405
diff
changeset
|
137 (dict(), u'just now'), |
71860d0737e7
- age tests cannot be dynamic, there are cases when age calculation
Marcin Kuzminski <marcin@python-works.com>
parents:
3405
diff
changeset
|
138 (dict(seconds=1), u'in 1 second'), |
71860d0737e7
- age tests cannot be dynamic, there are cases when age calculation
Marcin Kuzminski <marcin@python-works.com>
parents:
3405
diff
changeset
|
139 (dict(seconds=60 * 2), u'in 2 minutes'), |
71860d0737e7
- age tests cannot be dynamic, there are cases when age calculation
Marcin Kuzminski <marcin@python-works.com>
parents:
3405
diff
changeset
|
140 (dict(hours=1), u'in 1 hour'), |
71860d0737e7
- age tests cannot be dynamic, there are cases when age calculation
Marcin Kuzminski <marcin@python-works.com>
parents:
3405
diff
changeset
|
141 (dict(hours=24), u'in 1 day'), |
71860d0737e7
- age tests cannot be dynamic, there are cases when age calculation
Marcin Kuzminski <marcin@python-works.com>
parents:
3405
diff
changeset
|
142 (dict(hours=24 * 5), u'in 5 days'), |
71860d0737e7
- age tests cannot be dynamic, there are cases when age calculation
Marcin Kuzminski <marcin@python-works.com>
parents:
3405
diff
changeset
|
143 (dict(months=1), u'in 1 month'), |
71860d0737e7
- age tests cannot be dynamic, there are cases when age calculation
Marcin Kuzminski <marcin@python-works.com>
parents:
3405
diff
changeset
|
144 (dict(months=1, days=1), u'in 1 month and 1 day'), |
71860d0737e7
- age tests cannot be dynamic, there are cases when age calculation
Marcin Kuzminski <marcin@python-works.com>
parents:
3405
diff
changeset
|
145 (dict(years=1, months=1), u'in 1 year and 1 month') |
71860d0737e7
- age tests cannot be dynamic, there are cases when age calculation
Marcin Kuzminski <marcin@python-works.com>
parents:
3405
diff
changeset
|
146 ]) |
71860d0737e7
- age tests cannot be dynamic, there are cases when age calculation
Marcin Kuzminski <marcin@python-works.com>
parents:
3405
diff
changeset
|
147 def test_age_in_future(self, age_args, expected): |
2902
e2b2791d1e7c
fixed #597 commits in future get negative age.
Marcin Kuzminski <marcin@python-works.com>
parents:
2846
diff
changeset
|
148 from rhodecode.lib.utils2 import age |
3261
54a439edaf99
fixed AGE funtion for future dates, testa are now cleaner with dateutil usage
Marcin Kuzminski <marcin@python-works.com>
parents:
3132
diff
changeset
|
149 from dateutil import relativedelta |
3644
71860d0737e7
- age tests cannot be dynamic, there are cases when age calculation
Marcin Kuzminski <marcin@python-works.com>
parents:
3405
diff
changeset
|
150 n = datetime.datetime(year=2012, month=5, day=17) |
3261
54a439edaf99
fixed AGE funtion for future dates, testa are now cleaner with dateutil usage
Marcin Kuzminski <marcin@python-works.com>
parents:
3132
diff
changeset
|
151 delt = lambda *args, **kwargs: relativedelta.relativedelta(*args, **kwargs) |
3644
71860d0737e7
- age tests cannot be dynamic, there are cases when age calculation
Marcin Kuzminski <marcin@python-works.com>
parents:
3405
diff
changeset
|
152 self.assertEqual(age(n + delt(**age_args), now=n), expected) |
2902
e2b2791d1e7c
fixed #597 commits in future get negative age.
Marcin Kuzminski <marcin@python-works.com>
parents:
2846
diff
changeset
|
153 |
2674
a221706dab50
merged + fixed pull request #62: Implemented metatags and visualisation options.
Marcin Kuzminski <marcin@python-works.com>
parents:
2371
diff
changeset
|
154 def test_tag_exctrator(self): |
a221706dab50
merged + fixed pull request #62: Implemented metatags and visualisation options.
Marcin Kuzminski <marcin@python-works.com>
parents:
2371
diff
changeset
|
155 sample = ( |
a221706dab50
merged + fixed pull request #62: Implemented metatags and visualisation options.
Marcin Kuzminski <marcin@python-works.com>
parents:
2371
diff
changeset
|
156 "hello pta[tag] gog [[]] [[] sda ero[or]d [me =>>< sa]" |
a221706dab50
merged + fixed pull request #62: Implemented metatags and visualisation options.
Marcin Kuzminski <marcin@python-works.com>
parents:
2371
diff
changeset
|
157 "[requires] [stale] [see<>=>] [see => http://url.com]" |
a221706dab50
merged + fixed pull request #62: Implemented metatags and visualisation options.
Marcin Kuzminski <marcin@python-works.com>
parents:
2371
diff
changeset
|
158 "[requires => url] [lang => python] [just a tag]" |
a221706dab50
merged + fixed pull request #62: Implemented metatags and visualisation options.
Marcin Kuzminski <marcin@python-works.com>
parents:
2371
diff
changeset
|
159 "[,d] [ => ULR ] [obsolete] [desc]]" |
a221706dab50
merged + fixed pull request #62: Implemented metatags and visualisation options.
Marcin Kuzminski <marcin@python-works.com>
parents:
2371
diff
changeset
|
160 ) |
a221706dab50
merged + fixed pull request #62: Implemented metatags and visualisation options.
Marcin Kuzminski <marcin@python-works.com>
parents:
2371
diff
changeset
|
161 from rhodecode.lib.helpers import desc_stylize |
a221706dab50
merged + fixed pull request #62: Implemented metatags and visualisation options.
Marcin Kuzminski <marcin@python-works.com>
parents:
2371
diff
changeset
|
162 res = desc_stylize(sample) |
a221706dab50
merged + fixed pull request #62: Implemented metatags and visualisation options.
Marcin Kuzminski <marcin@python-works.com>
parents:
2371
diff
changeset
|
163 self.assertTrue('<div class="metatag" tag="tag">tag</div>' in res) |
a221706dab50
merged + fixed pull request #62: Implemented metatags and visualisation options.
Marcin Kuzminski <marcin@python-works.com>
parents:
2371
diff
changeset
|
164 self.assertTrue('<div class="metatag" tag="obsolete">obsolete</div>' in res) |
a221706dab50
merged + fixed pull request #62: Implemented metatags and visualisation options.
Marcin Kuzminski <marcin@python-works.com>
parents:
2371
diff
changeset
|
165 self.assertTrue('<div class="metatag" tag="stale">stale</div>' in res) |
a221706dab50
merged + fixed pull request #62: Implemented metatags and visualisation options.
Marcin Kuzminski <marcin@python-works.com>
parents:
2371
diff
changeset
|
166 self.assertTrue('<div class="metatag" tag="lang">python</div>' in res) |
a221706dab50
merged + fixed pull request #62: Implemented metatags and visualisation options.
Marcin Kuzminski <marcin@python-works.com>
parents:
2371
diff
changeset
|
167 self.assertTrue('<div class="metatag" tag="requires">requires => <a href="/url">url</a></div>' in res) |
a221706dab50
merged + fixed pull request #62: Implemented metatags and visualisation options.
Marcin Kuzminski <marcin@python-works.com>
parents:
2371
diff
changeset
|
168 self.assertTrue('<div class="metatag" tag="tag">tag</div>' in res) |
2753
e34a6b1eb594
added test for alternative gravatar
Marcin Kuzminski <marcin@python-works.com>
parents:
2674
diff
changeset
|
169 |
e34a6b1eb594
added test for alternative gravatar
Marcin Kuzminski <marcin@python-works.com>
parents:
2674
diff
changeset
|
170 def test_alternative_gravatar(self): |
e34a6b1eb594
added test for alternative gravatar
Marcin Kuzminski <marcin@python-works.com>
parents:
2674
diff
changeset
|
171 from rhodecode.lib.helpers import gravatar_url |
e34a6b1eb594
added test for alternative gravatar
Marcin Kuzminski <marcin@python-works.com>
parents:
2674
diff
changeset
|
172 _md5 = lambda s: hashlib.md5(s).hexdigest() |
e34a6b1eb594
added test for alternative gravatar
Marcin Kuzminski <marcin@python-works.com>
parents:
2674
diff
changeset
|
173 |
e34a6b1eb594
added test for alternative gravatar
Marcin Kuzminski <marcin@python-works.com>
parents:
2674
diff
changeset
|
174 def fake_conf(**kwargs): |
e34a6b1eb594
added test for alternative gravatar
Marcin Kuzminski <marcin@python-works.com>
parents:
2674
diff
changeset
|
175 from pylons import config |
e34a6b1eb594
added test for alternative gravatar
Marcin Kuzminski <marcin@python-works.com>
parents:
2674
diff
changeset
|
176 config['app_conf'] = {} |
e34a6b1eb594
added test for alternative gravatar
Marcin Kuzminski <marcin@python-works.com>
parents:
2674
diff
changeset
|
177 config['app_conf']['use_gravatar'] = True |
e34a6b1eb594
added test for alternative gravatar
Marcin Kuzminski <marcin@python-works.com>
parents:
2674
diff
changeset
|
178 config['app_conf'].update(kwargs) |
e34a6b1eb594
added test for alternative gravatar
Marcin Kuzminski <marcin@python-works.com>
parents:
2674
diff
changeset
|
179 return config |
2836
819eb7f8a555
Implemented patch from andrewsh ref #565 Add support for {netloc} and {scheme}
Marcin Kuzminski <marcin@python-works.com>
parents:
2790
diff
changeset
|
180 |
819eb7f8a555
Implemented patch from andrewsh ref #565 Add support for {netloc} and {scheme}
Marcin Kuzminski <marcin@python-works.com>
parents:
2790
diff
changeset
|
181 class fake_url(): |
819eb7f8a555
Implemented patch from andrewsh ref #565 Add support for {netloc} and {scheme}
Marcin Kuzminski <marcin@python-works.com>
parents:
2790
diff
changeset
|
182 @classmethod |
819eb7f8a555
Implemented patch from andrewsh ref #565 Add support for {netloc} and {scheme}
Marcin Kuzminski <marcin@python-works.com>
parents:
2790
diff
changeset
|
183 def current(cls, *args, **kwargs): |
819eb7f8a555
Implemented patch from andrewsh ref #565 Add support for {netloc} and {scheme}
Marcin Kuzminski <marcin@python-works.com>
parents:
2790
diff
changeset
|
184 return 'https://server.com' |
819eb7f8a555
Implemented patch from andrewsh ref #565 Add support for {netloc} and {scheme}
Marcin Kuzminski <marcin@python-works.com>
parents:
2790
diff
changeset
|
185 |
819eb7f8a555
Implemented patch from andrewsh ref #565 Add support for {netloc} and {scheme}
Marcin Kuzminski <marcin@python-works.com>
parents:
2790
diff
changeset
|
186 with mock.patch('pylons.url', fake_url): |
819eb7f8a555
Implemented patch from andrewsh ref #565 Add support for {netloc} and {scheme}
Marcin Kuzminski <marcin@python-works.com>
parents:
2790
diff
changeset
|
187 fake = fake_conf(alternative_gravatar_url='http://test.com/{email}') |
819eb7f8a555
Implemented patch from andrewsh ref #565 Add support for {netloc} and {scheme}
Marcin Kuzminski <marcin@python-works.com>
parents:
2790
diff
changeset
|
188 with mock.patch('pylons.config', fake): |
819eb7f8a555
Implemented patch from andrewsh ref #565 Add support for {netloc} and {scheme}
Marcin Kuzminski <marcin@python-works.com>
parents:
2790
diff
changeset
|
189 from pylons import url |
2846
620669b2a88b
fixed gravatar test typo
Marcin Kuzminski <marcin@python-works.com>
parents:
2836
diff
changeset
|
190 assert url.current() == 'https://server.com' |
2836
819eb7f8a555
Implemented patch from andrewsh ref #565 Add support for {netloc} and {scheme}
Marcin Kuzminski <marcin@python-works.com>
parents:
2790
diff
changeset
|
191 grav = gravatar_url(email_address='test@foo.com', size=24) |
819eb7f8a555
Implemented patch from andrewsh ref #565 Add support for {netloc} and {scheme}
Marcin Kuzminski <marcin@python-works.com>
parents:
2790
diff
changeset
|
192 assert grav == 'http://test.com/test@foo.com' |
819eb7f8a555
Implemented patch from andrewsh ref #565 Add support for {netloc} and {scheme}
Marcin Kuzminski <marcin@python-works.com>
parents:
2790
diff
changeset
|
193 |
819eb7f8a555
Implemented patch from andrewsh ref #565 Add support for {netloc} and {scheme}
Marcin Kuzminski <marcin@python-works.com>
parents:
2790
diff
changeset
|
194 fake = fake_conf(alternative_gravatar_url='http://test.com/{email}') |
819eb7f8a555
Implemented patch from andrewsh ref #565 Add support for {netloc} and {scheme}
Marcin Kuzminski <marcin@python-works.com>
parents:
2790
diff
changeset
|
195 with mock.patch('pylons.config', fake): |
819eb7f8a555
Implemented patch from andrewsh ref #565 Add support for {netloc} and {scheme}
Marcin Kuzminski <marcin@python-works.com>
parents:
2790
diff
changeset
|
196 grav = gravatar_url(email_address='test@foo.com', size=24) |
819eb7f8a555
Implemented patch from andrewsh ref #565 Add support for {netloc} and {scheme}
Marcin Kuzminski <marcin@python-works.com>
parents:
2790
diff
changeset
|
197 assert grav == 'http://test.com/test@foo.com' |
2753
e34a6b1eb594
added test for alternative gravatar
Marcin Kuzminski <marcin@python-works.com>
parents:
2674
diff
changeset
|
198 |
2836
819eb7f8a555
Implemented patch from andrewsh ref #565 Add support for {netloc} and {scheme}
Marcin Kuzminski <marcin@python-works.com>
parents:
2790
diff
changeset
|
199 fake = fake_conf(alternative_gravatar_url='http://test.com/{md5email}') |
819eb7f8a555
Implemented patch from andrewsh ref #565 Add support for {netloc} and {scheme}
Marcin Kuzminski <marcin@python-works.com>
parents:
2790
diff
changeset
|
200 with mock.patch('pylons.config', fake): |
819eb7f8a555
Implemented patch from andrewsh ref #565 Add support for {netloc} and {scheme}
Marcin Kuzminski <marcin@python-works.com>
parents:
2790
diff
changeset
|
201 em = 'test@foo.com' |
819eb7f8a555
Implemented patch from andrewsh ref #565 Add support for {netloc} and {scheme}
Marcin Kuzminski <marcin@python-works.com>
parents:
2790
diff
changeset
|
202 grav = gravatar_url(email_address=em, size=24) |
819eb7f8a555
Implemented patch from andrewsh ref #565 Add support for {netloc} and {scheme}
Marcin Kuzminski <marcin@python-works.com>
parents:
2790
diff
changeset
|
203 assert grav == 'http://test.com/%s' % (_md5(em)) |
2753
e34a6b1eb594
added test for alternative gravatar
Marcin Kuzminski <marcin@python-works.com>
parents:
2674
diff
changeset
|
204 |
2836
819eb7f8a555
Implemented patch from andrewsh ref #565 Add support for {netloc} and {scheme}
Marcin Kuzminski <marcin@python-works.com>
parents:
2790
diff
changeset
|
205 fake = fake_conf(alternative_gravatar_url='http://test.com/{md5email}/{size}') |
819eb7f8a555
Implemented patch from andrewsh ref #565 Add support for {netloc} and {scheme}
Marcin Kuzminski <marcin@python-works.com>
parents:
2790
diff
changeset
|
206 with mock.patch('pylons.config', fake): |
819eb7f8a555
Implemented patch from andrewsh ref #565 Add support for {netloc} and {scheme}
Marcin Kuzminski <marcin@python-works.com>
parents:
2790
diff
changeset
|
207 em = 'test@foo.com' |
819eb7f8a555
Implemented patch from andrewsh ref #565 Add support for {netloc} and {scheme}
Marcin Kuzminski <marcin@python-works.com>
parents:
2790
diff
changeset
|
208 grav = gravatar_url(email_address=em, size=24) |
819eb7f8a555
Implemented patch from andrewsh ref #565 Add support for {netloc} and {scheme}
Marcin Kuzminski <marcin@python-works.com>
parents:
2790
diff
changeset
|
209 assert grav == 'http://test.com/%s/%s' % (_md5(em), 24) |
819eb7f8a555
Implemented patch from andrewsh ref #565 Add support for {netloc} and {scheme}
Marcin Kuzminski <marcin@python-works.com>
parents:
2790
diff
changeset
|
210 |
819eb7f8a555
Implemented patch from andrewsh ref #565 Add support for {netloc} and {scheme}
Marcin Kuzminski <marcin@python-works.com>
parents:
2790
diff
changeset
|
211 fake = fake_conf(alternative_gravatar_url='{scheme}://{netloc}/{md5email}/{size}') |
819eb7f8a555
Implemented patch from andrewsh ref #565 Add support for {netloc} and {scheme}
Marcin Kuzminski <marcin@python-works.com>
parents:
2790
diff
changeset
|
212 with mock.patch('pylons.config', fake): |
819eb7f8a555
Implemented patch from andrewsh ref #565 Add support for {netloc} and {scheme}
Marcin Kuzminski <marcin@python-works.com>
parents:
2790
diff
changeset
|
213 em = 'test@foo.com' |
819eb7f8a555
Implemented patch from andrewsh ref #565 Add support for {netloc} and {scheme}
Marcin Kuzminski <marcin@python-works.com>
parents:
2790
diff
changeset
|
214 grav = gravatar_url(email_address=em, size=24) |
819eb7f8a555
Implemented patch from andrewsh ref #565 Add support for {netloc} and {scheme}
Marcin Kuzminski <marcin@python-works.com>
parents:
2790
diff
changeset
|
215 assert grav == 'https://server.com/%s/%s' % (_md5(em), 24) |
3385
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
216 |
3405
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
217 def _quick_url(self, text, tmpl="""<a class="revision-link" href="%s">%s</a>""", url_=None): |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
218 """ |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
219 Changes `some text url[foo]` => `some text <a href="/">foo</a> |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
220 |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
221 :param text: |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
222 """ |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
223 import re |
3644
71860d0737e7
- age tests cannot be dynamic, there are cases when age calculation
Marcin Kuzminski <marcin@python-works.com>
parents:
3405
diff
changeset
|
224 # quickly change expected url[] into a link |
3405
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
225 URL_PAT = re.compile(r'(?:url\[)(.+?)(?:\])') |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
226 |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
227 def url_func(match_obj): |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
228 _url = match_obj.groups()[0] |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
229 return tmpl % (url_ or '/some-url', _url) |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
230 return URL_PAT.sub(url_func, text) |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
231 |
3385
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
232 @parameterized.expand([ |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
233 ("", |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
234 ""), |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
235 ("git-svn-id: https://svn.apache.org/repos/asf/libcloud/trunk@1441655 13f79535-47bb-0310-9956-ffa450edef68", |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
236 "git-svn-id: https://svn.apache.org/repos/asf/libcloud/trunk@1441655 13f79535-47bb-0310-9956-ffa450edef68"), |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
237 ("from rev 000000000000", |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
238 "from rev url[000000000000]"), |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
239 ("from rev 000000000000123123 also rev 000000000000", |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
240 "from rev url[000000000000123123] also rev url[000000000000]"), |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
241 ("this should-000 00", |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
242 "this should-000 00"), |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
243 ("longtextffffffffff rev 123123123123", |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
244 "longtextffffffffff rev url[123123123123]"), |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
245 ("rev ffffffffffffffffffffffffffffffffffffffffffffffffff", |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
246 "rev ffffffffffffffffffffffffffffffffffffffffffffffffff"), |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
247 ("ffffffffffff some text traalaa", |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
248 "url[ffffffffffff] some text traalaa"), |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
249 ("""Multi line |
3394
fe2bb88bf7ac
whitespace cleanup
Marcin Kuzminski <marcin@python-works.com>
parents:
3385
diff
changeset
|
250 123123123123 |
3405
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
251 some text 123123123123 |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
252 sometimes ! |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
253 """, |
3385
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
254 """Multi line |
3394
fe2bb88bf7ac
whitespace cleanup
Marcin Kuzminski <marcin@python-works.com>
parents:
3385
diff
changeset
|
255 url[123123123123] |
3405
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
256 some text url[123123123123] |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
257 sometimes ! |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
258 """) |
3385
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
259 ]) |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
260 def test_urlify_changesets(self, sample, expected): |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
261 def fake_url(self, *args, **kwargs): |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
262 return '/some-url' |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
263 |
3405
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
264 expected = self._quick_url(expected) |
3385
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
265 |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
266 with mock.patch('pylons.url', fake_url): |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
267 from rhodecode.lib.helpers import urlify_changesets |
d21c762f5c4b
revision extraction function shouldn't be so eager, just extract commits that are
Marcin Kuzminski <marcin@python-works.com>
parents:
3261
diff
changeset
|
268 self.assertEqual(urlify_changesets(sample, 'repo_name'), expected) |
3405
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
269 |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
270 @parameterized.expand([ |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
271 ("", |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
272 "", |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
273 ""), |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
274 ("https://svn.apache.org/repos", |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
275 "url[https://svn.apache.org/repos]", |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
276 "https://svn.apache.org/repos"), |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
277 ("http://svn.apache.org/repos", |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
278 "url[http://svn.apache.org/repos]", |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
279 "http://svn.apache.org/repos"), |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
280 ("from rev a also rev http://google.com", |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
281 "from rev a also rev url[http://google.com]", |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
282 "http://google.com"), |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
283 ("""Multi line |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
284 https://foo.bar.com |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
285 some text lalala""", |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
286 """Multi line |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
287 url[https://foo.bar.com] |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
288 some text lalala""", |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
289 "https://foo.bar.com") |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
290 ]) |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
291 def test_urlify_test(self, sample, expected, url_): |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
292 from rhodecode.lib.helpers import urlify_text |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
293 expected = self._quick_url(expected, |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
294 tmpl="""<a href="%s">%s</a>""", url_=url_) |
a9adca4ba3c9
fixed urlify changesets regex + tests
Marcin Kuzminski <marcin@python-works.com>
parents:
3394
diff
changeset
|
295 self.assertEqual(urlify_text(sample), expected) |