Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Side by Side Diff: sitescripts/stats/test/common.py

Issue 29934561: #1537 - Remove stats processing from sitescripts (Closed) Base URL: https://hg.adblockplus.org/sitescripts
Patch Set: Created Nov. 2, 2018, 12:42 p.m.
Left:
Right:
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 # This file is part of the Adblock Plus web scripts,
2 # Copyright (C) 2006-present eyeo GmbH
3 #
4 # Adblock Plus is free software: you can redistribute it and/or modify
5 # it under the terms of the GNU General Public License version 3 as
6 # published by the Free Software Foundation.
7 #
8 # Adblock Plus is distributed in the hope that it will be useful,
9 # but WITHOUT ANY WARRANTY; without even the implied warranty of
10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 # GNU General Public License for more details.
12 #
13 # You should have received a copy of the GNU General Public License
14 # along with Adblock Plus. If not, see <http://www.gnu.org/licenses/>.
15
16 import unittest
17 import re
18 import sitescripts.stats.common as common
19
20
21 class Test(unittest.TestCase):
22 longMessage = True
23 maxDiff = None
24
25 def test_fileencoding(self):
26 tests = [
27 ('foo_bar', True),
28 ('1234.txt', True),
29 ('xYz.DAT', True),
30 ('foo/bar.txt', False),
31 ('foo/bar+bas-xyz.txt', False),
32 (u'foo\u1234-bar\u4321', False),
33 ('foobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobar foobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfo obarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoob arfoobarfoobar', u'foobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarf oobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoobarfoo barfoobar\u2026'),
34 ]
35 for name, expect_identical in tests:
36 path = common.filename_encode(name)
37 if expect_identical is True:
38 self.assertEqual(path, name, "Encoding '%s' shouldn't change str ing" % name)
39 else:
40 self.assertTrue(re.match(r'^[\w\.\-]*$', path), "Encoding '%s' s hould replace all special characters" % name)
41
42 if isinstance(expect_identical, basestring):
43 self.assertEqual(common.filename_decode(path), expect_identical, "Encoding and decoding '%s' should produce a truncated string as result" % name )
44 else:
45 self.assertEqual(common.filename_decode(path), name, "Encoding a nd decoding '%s' should produce the original string" % name)
46
47
48 if __name__ == '__main__':
49 unittest.main()
OLDNEW

Powered by Google App Engine
This is Rietveld