memote

(me)tabolic (mo)del (te)sts.

The memote Python package is a community-driven effort towards a standardized genome-scale metabolic model test suite.

Package Contents

memote.show_versions()[source]

Print formatted dependency information to stdout.

memote.validate_model(path)[source]

Validate a model structurally and optionally store results as JSON.

Parameters:
path :

Path to model file.

Returns:
tuple
cobra.Model

The metabolic model under investigation.

tuple

A tuple reporting on the SBML level, version, and FBC package version used (if any) in the SBML document.

dict

A simple dictionary containing a list of errors and warnings.

memote.test_model(model, sbml_version=None, results=False, pytest_args=None, exclusive=None, skip=None, experimental=None)[source]

Test a model and optionally store results as JSON.

Parameters:
model : cobra.Model

The metabolic model under investigation.

sbml_version: tuple, optional

A tuple reporting on the level, version, and FBC use of the SBML file.

results : bool, optional

Whether to return the results in addition to the return code.

pytest_args : list, optional

Additional arguments for the pytest suite.

exclusive : iterable, optional

Names of test cases or modules to run and exclude all others. Takes precedence over skip.

skip : iterable, optional

Names of test cases or modules to skip.

Returns:
int

The return code of the pytest suite.

memote.Result, optional

A nested dictionary structure that contains the complete test results.

memote.snapshot_report(result, config=None, html=True)[source]

Generate a snapshot report from a result set and configuration.

Parameters:
result : memote.MemoteResult

Nested dictionary structure as returned from the test suite.

config : dict, optional

The final test report configuration (default None).

html : bool, optional

Whether to render the report as full HTML or JSON (default True).

memote.diff_report(diff_results, config=None, html=True)[source]

Generate a diff report from a result set and configuration.

Parameters:
diff_results : iterable of memote.MemoteResult

Nested dictionary structure as returned from the test suite.

config : dict, optional

The final test report configuration (default None).

html : bool, optional

Whether to render the report as full HTML or JSON (default True).

memote.history_report(history, config=None, html=True)[source]

Test a model and save a history report.

Parameters:
history : memote.HistoryManager

The manager grants access to previous results.

config : dict, optional

The final test report configuration.

html : bool, optional

Whether to render the report as full HTML or JSON (default True).

class memote.MemoteResult(*args, **kwargs)

Bases: dict

Collect the metabolic model test suite results.

static add_environment_information(meta)

Record environment information.

class memote.ResultManager(**kwargs)

Bases: object

Manage storage of results to JSON files.

store(self, result, filename, pretty=True)

Write a result to the given file.

Parameters:
result : memote.MemoteResult

The dictionary structure of results.

filename : str or pathlib.Path

Store results directly to the given filename.

pretty : bool, optional

Whether (default) or not to write JSON in a more legible format.

load(self, filename)

Load a result from the given JSON file.

class memote.RepoResultManager(repository, location, **kwargs)

Bases: memote.suite.results.result_manager.ResultManager

Manage storage of results to JSON files.

Results are stored to and loaded from a specific location (directory) and enriched with git commit meta information.

record_git_info(self, commit=None)

Record git meta information.

Parameters:
commit : str, optional

Unique hexsha of the desired commit.

Returns:
GitInfo

Git commit meta information.

get_filename(self, git_info)

Create a filename from the storage directory and the commit hash.

Parameters:
git_info : GitInfo

A named tuple with git meta information.

Returns:
str

The path to the file where the result of the current commit is stored.

static add_git(meta, git_info)

Enrich the result meta information with commit data.

store(self, result, commit=None, **kwargs)

Store a result in a JSON file attaching git meta information.

Parameters:
result : memote.MemoteResult

The dictionary structure of results.

commit : str, optional

Unique hexsha of the desired commit.

kwargs :

Passed to parent function.

load(self, commit=None)

Load a result from the storage directory.

class memote.SQLResultManager(**kwargs)

Bases: memote.suite.results.repo_result_manager.RepoResultManager

Manage storage of results to a database.

store(self, result, commit=None, **kwargs)

Store a result in a JSON file attaching git meta information.

Parameters:
result : memote.MemoteResult

The dictionary structure of results.

commit : str, optional

Unique hexsha of the desired commit.

kwargs :

Passed to parent function.

load(self, commit=None)

Load a result from the database.

class memote.HistoryManager(repository, manager, **kwargs)

Bases: object

Manage access to results in the commit history of a git repository.

Attributes:
manager : memote.RepoResultManager

The manager for accessing individual results.

current : str

The name of the currently active branch.

build_branch_structure(self, model, skip)

Inspect and record the repo’s branches and their history.

iter_branches(self)

Iterate over branch names and their commit histories.

iter_commits(self)

Iterate over all commit hashes in the repository.

load_history(self, model, skip={'gh-pages'})

Load the entire results history into memory.

Could be a bad idea in a far future.

get_result(self, commit, default=MemoteResult())

Return an individual result from the history if it exists.

__contains__(self, commit)

Test for the existence of a result for a commit.

class memote.ReportConfiguration(*args, **kwargs)

Bases: dict

Collect the metabolic model test suite results.

classmethod load(cls, filename=None)

Load a test report configuration.

merge(self, other)

Merge a custom configuration.

class memote.Report(result, configuration, **kwargs)

Bases: object

Determine the abstract report interface.

Attributes:
result : memote.MemoteResult

The dictionary structure of results.

configuration : memote.MemoteConfiguration

A memote configuration structure.

render_json(self, pretty=False)

Render the report results as JSON.

Parameters:
pretty : bool, optional

Whether to format the resulting JSON in a more legible way ( default False).

render_html(self)

Render an HTML report.

get_configured_tests(self)

Get tests explicitly configured.

determine_miscellaneous_tests(self)

Identify tests not explicitly configured in test organization.

List them as an additional card called Misc, which is where they will now appear in the report.

compute_score(self)

Calculate the overall test score using the configuration.

memote.LOGGER
class memote.SnapshotReport(**kwargs)

Bases: memote.suite.reporting.report.Report

Render a one-time report from the given model results.

Attributes:
result : memote.MemoteResult

The dictionary structure of results.

configuration : memote.MemoteConfiguration

A memote configuration structure.

class memote.HistoryReport(history, configuration, **kwargs)

Bases: memote.suite.reporting.report.Report

Render a rich report using the git repository history.

Attributes:
configuration : memote.MemoteConfiguration

A memote configuration structure.

collect_history(self)

Build the structure of results in terms of a commit history.

class memote.DiffReport(diff_results, configuration, **kwargs)

Bases: memote.suite.reporting.report.Report

Render a report displaying the results of two or more models side-by-side.

Attributes:
diff_results : python.Dictionary

The dictionary structure of memote.MemoteResult objects.

configuration : memote.MemoteConfiguration

A memote configuration structure.

format_and_score_diff_data(self, diff_results)

Reformat the api results to work with the front-end.

class memote.MemoteExtension(environment)[source]

Bases: jinja2.ext.Extension

Provide an absolute path to a file.

tags
static normalize(filename)

Return an absolute path of the given file name.

memote.__author__ = Moritz E. Beber[source]
memote.__email__ = morbeb@biosustain.dtu.dk[source]
memote.__version__ = 0.9.12[source]