diff options
Diffstat (limited to 'vstf/vstf/controller/reporters/report/provider/html_provider.py')
-rwxr-xr-x | vstf/vstf/controller/reporters/report/provider/html_provider.py | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/vstf/vstf/controller/reporters/report/provider/html_provider.py b/vstf/vstf/controller/reporters/report/provider/html_provider.py new file mode 100755 index 00000000..b0b07432 --- /dev/null +++ b/vstf/vstf/controller/reporters/report/provider/html_provider.py @@ -0,0 +1,63 @@ +#!/usr/bin/python +# -*- coding: utf8 -*- +# author: wly +# date: 2015-09-25 +# see license for license details +__version__ = ''' ''' +import logging + +LOG = logging.getLogger(__name__) +from vstf.controller.settings.html_settings import HtmlSettings +from vstf.controller.settings.data_settings import DataSettings + + +class HtmlProvider(object): + def __init__(self, content, style): + self._content = content + self._style = style + + def get_style(self): + return self._style["style"] + + def get_subject(self): + return self._content["subject"] + + def get_ovs_title(self): + return self._content["ovs"]["title"] + + def get_ovs_table(self): + return map(lambda x: list(x), self._content["ovs"]["content"].items()) + + def get_result_title(self): + return self._content["result"]["title"] + + def get_result_table(self, ttype): + result = [] + content = self._content["result"]["content"] + if ttype in content: + result.append(content[ttype]["columns"]) + result.extend(content[ttype]["data"]) + + result = map(lambda x: list(x), zip(*result)) + return result + + +class StyleProvider(object): + def __init__(self, style): + self._style = style + + def get_style(self): + return self._style["style"] + + +def unit_test(): + from vstf.common.log import setup_logging + setup_logging(level=logging.DEBUG, log_file="/var/log/html-provder.log", clevel=logging.INFO) + + html_settings = HtmlSettings() + LOG.info(html_settings.settings) + data_settings = DataSettings() + LOG.info(data_settings.settings) + + hprovider = HtmlProvider(data_settings.settings, html_settings.settings) + sprovider = StyleProvider(html_settings.settings) |