def reduce_data(data_view, samples): try: return data_view.reduce(samples) except: msg = ('Error while applying the view\n\t%s\nto the ' 'samples\n\t%s' % (data_view, samples)) logger.error(msg) raise
def reduce_data(data_view, samples): try: return data_view.reduce(samples) except: msg = "Error while applying the view\n\t%s\nto the " "samples\n\t%s" % ( data_view, samples, ) logger.error(msg) raise
def get_node(url, r, strict=True): try: node = r.resolve_url(url) except NotExistent as e: if strict: logger.error("Error while getting url %r\n%s" % (url, r.format_tree())) raise else: logger.warn("Ignoring error: %s" % e) return Report() node = deepcopy(node) node.parent = None return node
def get_node(url, r, strict=True): try: node = r.resolve_url(url) except NotExistent as e: if strict: logger.error('Error while getting url %r\n%s' % (url, r.format_tree())) raise else: logger.warn('Ignoring error: %s' % e) return Report() node = deepcopy(node) node.parent = None return node
def write_python_data(parent, name, mime, data): tables = get_tables() from tables.flavor import flavor_of hf = parent._v_file group = hf.createGroup(parent, name) hf.createArray(group, "mime", mime) try: flavor_of(data) ok_pytables = True except: ok_pytables = False # 2014-01-02 XXX this is a hack if data == []: ok_pytables = False if ok_pytables: try: hf.createArray(group, "value", data) except: msg = "Error while writing python data" msg += "\n parent: %s" % parent msg += "\n name: %s" % name msg += "\n mime: %s" % mime msg += "\n data: %s" % describe_type(data) msg += "\n %s" % describe_value(data) msg += "\n flavor: %s" % flavor_of(data) msg += "\nraw:\n%s" % data.__repr__() logger.error(msg) raise serialized = "pytables" else: serialized = "pickle" s = StringIO() cPickle.dump(data, s, protocol=2) hf.createVLArray(group, "pickle", tables.VLStringAtom(), filters=None) group.pickle.append(s.getvalue()) group._v_attrs["reprep_data_format"] = serialized
def caller(): try: args = arguments(x) except Exception as e: msg = "Error while preparing test case: %s.\n" % e msg += "Error while calling %s with argument %r" % (arguments, x) logger.error(msg) raise try: f(*args) except: msg = "Error while executing test %r.\n" % name msg += " f = %s\n" % f msg += " f.__module__ = %s\n" % f.__module__ msg += " x = %s\n" % str(x) msg += " arguments() = %s\n" % str(arguments) msg += " arguments(x) has size %d\n" % len(args) for i, a in enumerate(args): msg += " arg %d = %s\n" % (i, describe_value(a)) logger.error(msg) raise
def write_python_data(parent, name, mime, data): tables = get_tables() from tables.flavor import flavor_of hf = parent._v_file group = hf.createGroup(parent, name) hf.createArray(group, 'mime', mime) try: flavor_of(data) ok_pytables = True except: ok_pytables = False # 2014-01-02 XXX this is a hack if data == []: ok_pytables = False if ok_pytables: try: hf.createArray(group, 'value', data) except: msg = 'Error while writing python data' msg += '\n parent: %s' % parent msg += '\n name: %s' % name msg += '\n mime: %s' % mime msg += '\n data: %s' % describe_type(data) msg += '\n %s' % describe_value(data) msg += '\n flavor: %s' % flavor_of(data) msg += '\nraw:\n%s' % data.__repr__() logger.error(msg) raise serialized = 'pytables' else: serialized = 'pickle' s = StringIO() cPickle.dump(data, s, protocol=2) hf.createVLArray(group, 'pickle', tables.VLStringAtom(), filters=None) group.pickle.append(s.getvalue()) group._v_attrs['reprep_data_format'] = serialized
def rp_figure_sub(resources, id_figure, what, caption=None): figure = resources[id_figure] try: figure.sub(what, caption=caption) except (NotExistent, Exception) as e: logger.error(e)
def sub(self, resource, caption=None, display=None, **kwargs): ''' Adds a subfigure displaying the given resource. resource can either be a string or a data node. ''' if isinstance(resource, str): data = self.resolve_url(resource) if not isinstance(data, DataNode): msg = ('I expected a DataNode for %r, got %s' % (resource, data)) raise ValueError(msg) elif isinstance(resource, DataNode): data = resource else: raise ValueError('The first parameter to sub() must be either' ' a string (url) or a reference to a DataNode, ' ' not a %s.' % describe_type(resource)) if caption is None: caption = data.caption if caption is None: caption = data.nid # TODO: check if automatically generated # if data.nid in ['scale', 'posneg']: # caption = data.parent # if data.get_complete_id() in self.automatically_added: if data in self.automatically_added: warnings.warn('Node %r was automatically added to figure (new ' 'behavior in 1.0).' % self.get_relative_url(data), stacklevel=2) return # # if not isinstance(data, DataNode): # msg = ('I expect a DataNode as an argument to sub(), not a %s.' # % describe_type(resource)) # raise ValueError(msg) if display is not None: image = data.display(display, **kwargs) else: image = data.get_first_child_with_mime(MIME_IMAGES) if image is None: self.parent.print_tree() # XXX raise ValueError('Could not find candidate image for resource ' '%r; image node is %r.' % (resource, data.get_complete_id())) # Get an image that can be shown in a browser web_image = image.get_first_child_with_mime(MIME_WEB_IMAGES) if web_image is None: logger.error('No image with mime %r found in:\n%s' % (MIME_WEB_IMAGES, indent(image.format_tree(), '>'))) # convert the image to web image # TODO: to write web_image = image # XXX logger.error('I need to convert %s into a web image.' % (image)) sub = SubFigure(resource=self.get_relative_url(data), image=self.get_relative_url(image), web_image=self.get_relative_url(web_image), caption=caption) self.subfigures.append(sub)
def figure_to_html(node, context): complete_id = get_complete_id(node) file = context.file # @ReservedAssignment # XXX file.write('''<div style="clear:left" class='report-figure %s' id='%s'> ''' % (None, complete_id)) # file.write('''<span class='node-id'>%s</span>''' % node.nid) if not 'figure' in node.nid.lower(): # Do not write if name is autogenerated file.write('<h>%s</h>' % node.nid) if node.cols is None: ncols = len(node.subfigures) else: ncols = node.cols for i, sub in enumerate(node.subfigures): col = i % ncols last_col = col == ncols - 1 first_col = col == 0 classes = ['report-subfigure'] classes.append('ncols-%s' % ncols) if first_col: classes.append("first-col") if last_col: classes.append("last-col") file.write('<div class="%s"> ' % " ".join(classes)) main_resource = node.resolve_url(sub.resource) try: actual_resource = node.resolve_url(sub.web_image) except: logger.error("Cannot find sub.web_image url %r" % sub.web_image) node.parent.print_tree() # XXX raise image_filename, _ = get_node_filename(actual_resource, context) file.write( Template(''' <a href="${src}" class="zoomable"> <img src="${src}"/> </a> ''').substitute(src=image_filename) ) file.write('<p class="report-subfigure-caption">%s</p>' % htmlfy(sub.caption)) if main_resource != actual_resource: if isinstance(main_resource, DataNode): t = '<p class="report-subfigure-main-link"><a href="${src}"> main </a></p>' file.write(Template(t).substitute(src=get_node_filename(main_resource, context)[0])) file.write('</div> ') if last_col: file.write('\n\n') caption = node.caption if node.caption else "" file.write('<p class="report-figure-caption">%s</p>' % htmlfy(caption)) children_to_html(node, context) file.write('''</div>''')
def figure_to_html(node, context): complete_id = get_complete_id(node) file = context.file # @ReservedAssignment # XXX file.write( """<div style="clear:left" class='report-figure %s' id='%s'> """ % (None, complete_id) ) # file.write('''<span class='node-id'>%s</span>''' % node.nid) if not "figure" in node.nid.lower(): # Do not write if name is autogenerated file.write("<h>%s</h>" % node.nid) if node.cols is None: ncols = len(node.subfigures) else: ncols = node.cols for i, sub in enumerate(node.subfigures): col = i % ncols last_col = col == ncols - 1 first_col = col == 0 classes = ["report-subfigure"] classes.append("ncols-%s" % ncols) if first_col: classes.append("first-col") if last_col: classes.append("last-col") file.write('<div class="%s"> ' % " ".join(classes)) main_resource = node.resolve_url(sub.resource) try: actual_resource = node.resolve_url(sub.web_image) except: logger.error("Cannot find sub.web_image url %r" % sub.web_image) node.parent.print_tree() # XXX raise image_filename, _ = get_node_filename(actual_resource, context) if image_filename.endswith("pdf"): file.write( Template( """ <a href="${src}"> (cannot display PDF) </a> """ ).substitute(src=image_filename) ) elif image_filename.endswith("svg"): file.write( Template( """ <object data="${src}" width="100%" type="image/svg+xml"></object> """ ).substitute(src=image_filename) ) else: file.write( Template( """ <a href="${src}" class="zoomable"> <img src="${src}"/> </a> """ ).substitute(src=image_filename) ) file.write('<p class="report-subfigure-caption">%s</p>' % htmlfy(sub.caption)) if main_resource != actual_resource: if isinstance(main_resource, DataNode): t = '<p class="report-subfigure-main-link"><a href="${src}"> main </a></p>' file.write( Template(t).substitute( src=get_node_filename(main_resource, context)[0] ) ) file.write("</div> ") if last_col: file.write("\n\n") caption = node.caption if node.caption else "" file.write('<p class="report-figure-caption">%s</p>' % htmlfy(caption)) children_to_html(node, context) file.write("""</div>""")