| 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 | 
|---|