1#!/usr/bin/env python 2# Copyright 2013 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 6from intro_data_source import IntroDataSource 7from server_instance import ServerInstance 8from servlet import Request 9from test_data.canned_data import CANNED_TEST_FILE_SYSTEM_DATA 10from test_file_system import TestFileSystem 11import unittest 12 13class IntroDataSourceTest(unittest.TestCase): 14 def setUp(self): 15 self._server_instance = ServerInstance.ForTest( 16 TestFileSystem(CANNED_TEST_FILE_SYSTEM_DATA)) 17 18 def testIntro(self): 19 intro_data_source = IntroDataSource( 20 self._server_instance, Request.ForTest('')) 21 intro_data = intro_data_source.get('test_intro') 22 article_data = intro_data_source.get('test_article') 23 24 expected_intro = 'you<h2>first</h2><h3>inner</h3><h2>second</h2>' 25 # Article still has the header. 26 expected_article = '<h1>hi</h1>' + expected_intro 27 28 self.assertEqual(expected_intro, intro_data.Render().text) 29 self.assertEqual(expected_article, article_data.Render().text) 30 31 32if __name__ == '__main__': 33 unittest.main() 34