def test_load_template_source_second_source_path(self, open_mock): file_mock = MagicMock() file_mock.__enter__().read.return_value = "file_content" open_mock.side_effect = (IOError(errno.ENOENT, 'No such file or directory'), file_mock) loader = TemplateLoader(Mock()) self.assertEqual(loader.load_template_source("a.html"), ('file_content', '/fs/wirecloud/defaulttheme/templates/a.html'))
def test_get_template_sources_invalid_theme(self): loader = TemplateLoader(Mock()) expected_paths = [] self.assertEqual([ origin.name for origin in loader.get_template_sources("invalid:a.html") ], expected_paths)
def test_get_template_sources_force_theme(self): loader = TemplateLoader(Mock()) expected_paths = ['/fs/customroottheme/templates/a.html'] self.assertEqual([ origin.name for origin in loader.get_template_sources("customroottheme:a.html") ], expected_paths)
def test_get_template_sources_basic(self): loader = TemplateLoader(Mock()) expected_paths = [ '/fs/customtheme/templates/a.html', '/fs/wirecloud/defaulttheme/templates/a.html' ] self.assertEqual( [origin.name for origin in loader.get_template_sources("a.html")], expected_paths)
def test_load_template_source_second_source_path(self, open_mock): file_mock = MagicMock() file_mock.__enter__().read.return_value = "file_content" open_mock.side_effect = (IOError(errno.ENOENT, 'No such file or directory'), file_mock) loader = TemplateLoader(Mock()) self.assertEqual( loader.load_template_source("a.html"), ('file_content', '/fs/wirecloud/defaulttheme/templates/a.html'))
def test_load_template_source_not_found(self, open_mock): open_mock.side_effect = IOError(errno.ENOENT, 'No such file or directory') loader = TemplateLoader(Mock()) self.assertRaises(TemplateDoesNotExist, loader.load_template_source, "a.html")
def test_load_template_source_first_source_path(self, open_mock): open_mock().__enter__().read.return_value = 'file_content' loader = TemplateLoader(Mock()) self.assertEqual(loader.load_template_source("a.html"), ('file_content', '/fs/customtheme/templates/a.html'))
def test_get_contents_generic_IOError(self, open_mock): open_mock.side_effect = IOError(errno.EIO, 'I/O error') loader = TemplateLoader(Mock()) self.assertRaises(IOError, loader.get_contents, Mock())
def test_get_contents_ENOENT(self, open_mock): open_mock.side_effect = IOError(errno.ENOENT, 'No such file or directory') loader = TemplateLoader(Mock()) self.assertRaises(TemplateDoesNotExist, loader.get_contents, Mock())
def test_get_contents(self, open_mock): open_mock().__enter__().read.return_value = 'contents' loader = TemplateLoader(Mock()) self.assertEqual(loader.get_contents(Mock()), 'contents')
def test_get_template_sources_invalid_theme(self): loader = TemplateLoader(Mock()) expected_paths = [] self.assertEqual([origin.name for origin in loader.get_template_sources("invalid:a.html")], expected_paths)
def test_get_template_sources_force_theme(self): loader = TemplateLoader(Mock()) expected_paths = ['/fs/customroottheme/templates/a.html'] self.assertEqual([origin.name for origin in loader.get_template_sources("customroottheme:a.html")], expected_paths)
def test_get_template_sources_basic(self): loader = TemplateLoader(Mock()) expected_paths = ['/fs/customtheme/templates/a.html', '/fs/wirecloud/defaulttheme/templates/a.html'] self.assertEqual([origin.name for origin in loader.get_template_sources("a.html")], expected_paths)