| OLD | NEW |
| 1 # This file is part of Adblock Plus <https://adblockplus.org/>, | 1 # This file is part of Adblock Plus <https://adblockplus.org/>, |
| 2 # Copyright (C) 2006-present eyeo GmbH | 2 # Copyright (C) 2006-present eyeo GmbH |
| 3 # | 3 # |
| 4 # Adblock Plus is free software: you can redistribute it and/or modify | 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 | 5 # it under the terms of the GNU General Public License version 3 as |
| 6 # published by the Free Software Foundation. | 6 # published by the Free Software Foundation. |
| 7 # | 7 # |
| 8 # Adblock Plus is distributed in the hope that it will be useful, | 8 # Adblock Plus is distributed in the hope that it will be useful, |
| 9 # but WITHOUT ANY WARRANTY; without even the implied warranty of | 9 # but WITHOUT ANY WARRANTY; without even the implied warranty of |
| 10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | 10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| (...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 49 return self.files[filename].split('\n') | 49 return self.files[filename].split('\n') |
| 50 | 50 |
| 51 | 51 |
| 52 def render_str(*args, **kw): | 52 def render_str(*args, **kw): |
| 53 return '\n'.join(l.to_string() for l in render_filterlist(*args, **kw)) | 53 return '\n'.join(l.to_string() for l in render_filterlist(*args, **kw)) |
| 54 | 54 |
| 55 | 55 |
| 56 def test_simple_render(head): | 56 def test_simple_render(head): |
| 57 src = MockSource(fl='[Adblock]\n! Comment.') | 57 src = MockSource(fl='[Adblock]\n! Comment.') |
| 58 got = render_str('fl', {}, src) | 58 got = render_str('fl', {}, src) |
| 59 assert got == head + '! Comment.\n! Checksum: bmdRu7Y9gm9DAV6vOoAv4Q' | 59 assert got == head + '! Comment.' |
| 60 | 60 |
| 61 | 61 |
| 62 def test_include(head): | 62 def test_include(head): |
| 63 src = MockSource(fl='[Adblock]\n%include src:inc%', inc='Included') | 63 src = MockSource(fl='[Adblock]\n%include src:inc%', inc='Included') |
| 64 got = render_str('src:fl', {'src': src}) | 64 got = render_str('src:fl', {'src': src}) |
| 65 assert got.startswith(head + '! *** src:inc ***\nIncluded') | 65 assert got.startswith(head + '! *** src:inc ***\nIncluded') |
| 66 | 66 |
| 67 | 67 |
| 68 def test_include2(head): | 68 def test_include2(head): |
| 69 src1 = MockSource(fl='[Adblock]\n%include inc1%', | 69 src1 = MockSource(fl='[Adblock]\n%include inc1%', |
| (...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 111 src2 = MockSource(is_inheritable=False, | 111 src2 = MockSource(is_inheritable=False, |
| 112 inc1='%include inc2%', inc2='Included') | 112 inc1='%include inc2%', inc2='Included') |
| 113 with pytest.raises(IncludeError): | 113 with pytest.raises(IncludeError): |
| 114 render_str('src1:fl', {'src1': src1, 'src2': src2}) | 114 render_str('src1:fl', {'src1': src1, 'src2': src2}) |
| 115 | 115 |
| 116 | 116 |
| 117 def test_missing_header(): | 117 def test_missing_header(): |
| 118 src = MockSource(fl='! No header') | 118 src = MockSource(fl='! No header') |
| 119 with pytest.raises(MissingHeader): | 119 with pytest.raises(MissingHeader): |
| 120 render_str('fl', {}, src) | 120 render_str('fl', {}, src) |
| 121 |
| 122 |
| 123 def test_remove_checksum(head): |
| 124 src = MockSource(fl='[Adblock]\n! Comment\n! Checksum: foo') |
| 125 got = render_str('fl', {}, src) |
| 126 assert got == head + '! Comment' |
| OLD | NEW |