OLD | NEW |
(Empty) | |
| 1 #!/usr/bin/env python |
| 2 # Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 3 # Use of this source code is governed by a BSD-style license that can be |
| 4 # found in the LICENSE file. |
| 5 |
| 6 import os |
| 7 import unittest |
| 8 import test_urlfetch |
| 9 |
| 10 from local_fetcher import LocalFetcher |
| 11 from template_fetcher import TemplateFetcher |
| 12 from third_party.handlebar import Handlebar |
| 13 |
| 14 def _ReadFile(filename): |
| 15 with open(filename, 'r') as f: |
| 16 return f.read() |
| 17 |
| 18 class TestFetcher(LocalFetcher): |
| 19 def FetchResource(self, branch, path): |
| 20 result = self._Resource() |
| 21 result.content = _ReadFile(os.path.join(self.base_path, branch, path)) |
| 22 return result |
| 23 |
| 24 class TemplateFetcherTest(unittest.TestCase): |
| 25 def testFetcher(self): |
| 26 path = os.path.join('test_data', 'template_fetcher') |
| 27 fetcher = TestFetcher(path) |
| 28 t_fetcher_a = TemplateFetcher('a', fetcher) |
| 29 t_fetcher_b = TemplateFetcher('b', fetcher) |
| 30 |
| 31 template_a1 = Handlebar(_ReadFile(os.path.join(path, 'a', 'test1.html'))) |
| 32 self.assertEqual(template_a1.render('{}', {'templates': {}}).text, |
| 33 t_fetcher_a['test1.html'].render('{}', {'templates': {}}).text) |
| 34 |
| 35 template_a2 = Handlebar(_ReadFile(os.path.join(path, 'a', 'test2.html'))) |
| 36 self.assertEqual(template_a2.render('{}', {'templates': {}}).text, |
| 37 t_fetcher_a['test2.html'].render('{}', {'templates': {}}).text) |
| 38 |
| 39 template_b1 = Handlebar(_ReadFile(os.path.join(path, 'b', 'test1.html'))) |
| 40 self.assertEqual(template_b1.render('{}', {'templates': {}}).text, |
| 41 t_fetcher_b['test1.html'].render('{}', {'templates': {}}).text) |
| 42 |
| 43 self.assertEqual('', t_fetcher_b['junk.html']) |
| 44 |
| 45 if __name__ == '__main__': |
| 46 unittest.main() |
OLD | NEW |