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 t_fetcher_a.FetchTemplate('test1.html') |
| 31 t_fetcher_a.FetchTemplate('test2.html') |
| 32 t_fetcher_b.FetchTemplate('test1.html') |
| 33 |
| 34 template_a1 = Handlebar(_ReadFile(os.path.join(path, 'a', 'test1.html'))) |
| 35 self.assertEqual(template_a1.render('{}', {'templates': {}}).text, |
| 36 t_fetcher_a['test1.html'].render('{}', {'templates': {}}).text) |
| 37 |
| 38 template_a2 = Handlebar(_ReadFile(os.path.join(path, 'a', 'test2.html'))) |
| 39 self.assertEqual(template_a2.render('{}', {'templates': {}}).text, |
| 40 t_fetcher_a['test2.html'].render('{}', {'templates': {}}).text) |
| 41 |
| 42 template_b1 = Handlebar(_ReadFile(os.path.join(path, 'b', 'test1.html'))) |
| 43 self.assertEqual(template_b1.render('{}', {'templates': {}}).text, |
| 44 t_fetcher_b['test1.html'].render('{}', {'templates': {}}).text) |
| 45 |
| 46 if __name__ == '__main__': |
| 47 unittest.main() |
OLD | NEW |