biosimulators_test_suite package#
Subpackages#
- biosimulators_test_suite.results package
- biosimulators_test_suite.test_case package
- Submodules
- biosimulators_test_suite.test_case.cli module
- biosimulators_test_suite.test_case.combine_archive module
CombineArchiveHasSedDocumentsInNestedDirectoriesCombineArchiveHasSedDocumentsWithSameNamesInDifferentInNestedDirectoriesCombineArchiveHasSedDocumentsWithSameNamesInDifferentInNestedDirectories._archive_has_masterCombineArchiveHasSedDocumentsWithSameNamesInDifferentInNestedDirectories.SED_DOCUMENTS_HAVE_SAME_NAMESCombineArchiveHasSedDocumentsWithSameNamesInDifferentInNestedDirectories.SED_DOCUMENT_LOCATIONS_ARE_NESTED
CombineArchiveTestCaseWhenACombineArchiveHasAMasterFileSimulatorOnlyExecutesThisFileWhenACombineArchiveHasNoMasterFileSimulatorExecutesAllSedDocuments
- biosimulators_test_suite.test_case.docker_image module
- biosimulators_test_suite.test_case.log module
- biosimulators_test_suite.test_case.published_project module
ConfigurableMasterCombineArchiveTestCaseConfigurableMasterCombineArchiveTestCase._archive_has_masterConfigurableMasterCombineArchiveTestCase._model_change_filterConfigurableMasterCombineArchiveTestCase._remove_algorithm_parameter_changesConfigurableMasterCombineArchiveTestCase._use_single_variable_data_generatorsConfigurableMasterCombineArchiveTestCase._remove_plotsConfigurableMasterCombineArchiveTestCase._keep_one_task_one_reportConfigurableMasterCombineArchiveTestCase._expected_report_idsConfigurableMasterCombineArchiveTestCase.build_synthetic_archives()
ExpectedResultOfSyntheticArchiveSimulatorCanExecutePublishedProjectSimulatorCanExecutePublishedProject.idSimulatorCanExecutePublishedProject.nameSimulatorCanExecutePublishedProject.filenameSimulatorCanExecutePublishedProject.task_requirementsSimulatorCanExecutePublishedProject.skipped_simulatorsSimulatorCanExecutePublishedProject.expected_reportsSimulatorCanExecutePublishedProject.expected_plotsSimulatorCanExecutePublishedProject.runtime_failure_alert_typeSimulatorCanExecutePublishedProject.assert_no_extra_reportsSimulatorCanExecutePublishedProject.assert_no_extra_datasetsSimulatorCanExecutePublishedProject.assert_no_missing_plotsSimulatorCanExecutePublishedProject.assert_no_extra_plotsSimulatorCanExecutePublishedProject.r_tolSimulatorCanExecutePublishedProject.a_tolSimulatorCanExecutePublishedProject.minimum_number_of_synthetic_uniform_time_stepsSimulatorCanExecutePublishedProject.compatible_with_specifications()SimulatorCanExecutePublishedProject.eval()SimulatorCanExecutePublishedProject.exec_sedml_docs_in_archive()SimulatorCanExecutePublishedProject.from_dict()SimulatorCanExecutePublishedProject.from_json()SimulatorCanExecutePublishedProject.get_description()
SingleMasterSedDocumentCombineArchiveTestCaseSyntheticCombineArchiveTestCaseSyntheticCombineArchiveTestCase.idSyntheticCombineArchiveTestCase.nameSyntheticCombineArchiveTestCase.descriptionSyntheticCombineArchiveTestCase.output_mediumSyntheticCombineArchiveTestCase.published_projects_test_casesSyntheticCombineArchiveTestCase._published_projects_test_caseSyntheticCombineArchiveTestCase.EXEC_WITH_SINGULARITYSyntheticCombineArchiveTestCase.REPORT_ERROR_AS_SKIPSyntheticCombineArchiveTestCase.build_synthetic_archives()SyntheticCombineArchiveTestCase.eval()SyntheticCombineArchiveTestCase.eval_outputs()SyntheticCombineArchiveTestCase.is_curated_archive_suitable_for_building_synthetic_archive()SyntheticCombineArchiveTestCase.is_curated_sed_algorithm_suitable_for_building_synthetic_archive()SyntheticCombineArchiveTestCase.is_curated_sed_doc_suitable_for_building_synthetic_archive()SyntheticCombineArchiveTestCase.is_curated_sed_model_suitable_for_building_synthetic_archive()SyntheticCombineArchiveTestCase.is_curated_sed_report_suitable_for_building_synthetic_archive()SyntheticCombineArchiveTestCase.is_curated_sed_simulation_suitable_for_building_synthetic_archive()SyntheticCombineArchiveTestCase.is_curated_sed_task_suitable_for_building_synthetic_archive()
UniformTimeCourseTestCaseUniformTimeCourseTestCase.TEST_TIMEUniformTimeCourseTestCase.add_time_data_set()UniformTimeCourseTestCase.build_synthetic_archives()UniformTimeCourseTestCase.eval_outputs()UniformTimeCourseTestCase.is_curated_sed_task_suitable_for_building_synthetic_archive()UniformTimeCourseTestCase.modify_simulation()
find_cases()
- biosimulators_test_suite.test_case.results_report module
- biosimulators_test_suite.test_case.sedml module
SimulatorProducesLinear2DPlotsSimulatorProducesLinear3DPlotsSimulatorProducesLogarithmic2DPlotsSimulatorProducesLogarithmic3DPlotsSimulatorProducesMultiplePlotsSimulatorProducesReportsWithCuratedNumberOfDimensionsSimulatorSupportsAlgorithmParametersSimulatorSupportsModelAttributeChangesSimulatorSupportsModelsSimulationsTasksDataGeneratorsAndReportsSimulatorSupportsMultipleReportsPerSedDocumentSimulatorSupportsMultipleTasksPerSedDocumentSimulatorSupportsRepeatedTasksWithFunctionalRangeVariablesSimulatorSupportsRepeatedTasksWithFunctionalRangeVariables.FUNCTONAL_RANGE_USES_VARIABLESSimulatorSupportsRepeatedTasksWithFunctionalRangeVariables.HAS_CHANGESSimulatorSupportsRepeatedTasksWithFunctionalRangeVariables.NUM_NESTED_RANGESSimulatorSupportsRepeatedTasksWithFunctionalRangeVariables.NUM_NESTED_REPEATED_TASKSSimulatorSupportsRepeatedTasksWithFunctionalRangeVariables.NUM_SUB_TASKSSimulatorSupportsRepeatedTasksWithFunctionalRangeVariables.RANGE_TYPESimulatorSupportsRepeatedTasksWithFunctionalRangeVariables.is_concrete()
SimulatorSupportsRepeatedTasksWithFunctionalRangesSimulatorSupportsRepeatedTasksWithFunctionalRanges.FUNCTONAL_RANGE_USES_VARIABLESSimulatorSupportsRepeatedTasksWithFunctionalRanges.NUM_NESTED_RANGESSimulatorSupportsRepeatedTasksWithFunctionalRanges.NUM_NESTED_REPEATED_TASKSSimulatorSupportsRepeatedTasksWithFunctionalRanges.NUM_SUB_TASKSSimulatorSupportsRepeatedTasksWithFunctionalRanges.RANGE_TYPESimulatorSupportsRepeatedTasksWithFunctionalRanges.is_concrete()
SimulatorSupportsRepeatedTasksWithLinearUniformRangesSimulatorSupportsRepeatedTasksWithLinearUniformRanges.NUM_NESTED_REPEATED_TASKSSimulatorSupportsRepeatedTasksWithLinearUniformRanges.NUM_SUB_TASKSSimulatorSupportsRepeatedTasksWithLinearUniformRanges.RANGE_TYPESimulatorSupportsRepeatedTasksWithLinearUniformRanges.UNIFORM_RANGE_TYPESimulatorSupportsRepeatedTasksWithLinearUniformRanges.is_concrete()
SimulatorSupportsRepeatedTasksWithLogarithmicUniformRangesSimulatorSupportsRepeatedTasksWithLogarithmicUniformRanges.NUM_NESTED_REPEATED_TASKSSimulatorSupportsRepeatedTasksWithLogarithmicUniformRanges.NUM_SUB_TASKSSimulatorSupportsRepeatedTasksWithLogarithmicUniformRanges.RANGE_TYPESimulatorSupportsRepeatedTasksWithLogarithmicUniformRanges.UNIFORM_RANGE_TYPESimulatorSupportsRepeatedTasksWithLogarithmicUniformRanges.is_concrete()
SimulatorSupportsRepeatedTasksWithMultipleSubTasksSimulatorSupportsRepeatedTasksWithNestedFunctionalRangesSimulatorSupportsRepeatedTasksWithNestedFunctionalRanges.FUNCTONAL_RANGE_USES_VARIABLESSimulatorSupportsRepeatedTasksWithNestedFunctionalRanges.NUM_NESTED_RANGESSimulatorSupportsRepeatedTasksWithNestedFunctionalRanges.NUM_NESTED_REPEATED_TASKSSimulatorSupportsRepeatedTasksWithNestedFunctionalRanges.NUM_SUB_TASKSSimulatorSupportsRepeatedTasksWithNestedFunctionalRanges.RANGE_TYPESimulatorSupportsRepeatedTasksWithNestedFunctionalRanges.is_concrete()
SimulatorSupportsRepeatedTasksWithNestedRepeatedTasksSimulatorSupportsRepeatedTasksWithNestedRepeatedTasks.MIXED_SUB_TASK_TYPESSimulatorSupportsRepeatedTasksWithNestedRepeatedTasks.NUM_NESTED_REPEATED_TASKSSimulatorSupportsRepeatedTasksWithNestedRepeatedTasks.NUM_SUB_TASKSSimulatorSupportsRepeatedTasksWithNestedRepeatedTasks.RANGE_LENSSimulatorSupportsRepeatedTasksWithNestedRepeatedTasks.RANGE_TYPESimulatorSupportsRepeatedTasksWithNestedRepeatedTasks.is_concrete()
SimulatorSupportsRepeatedTasksWithSubTasksOfMixedTypesSimulatorSupportsRepeatedTasksWithSubTasksOfMixedTypes.MIXED_SUB_TASK_TYPESSimulatorSupportsRepeatedTasksWithSubTasksOfMixedTypes.NUM_NESTED_REPEATED_TASKSSimulatorSupportsRepeatedTasksWithSubTasksOfMixedTypes.NUM_SUB_TASKSSimulatorSupportsRepeatedTasksWithSubTasksOfMixedTypes.RANGE_LENSSimulatorSupportsRepeatedTasksWithSubTasksOfMixedTypes.RANGE_TYPESimulatorSupportsRepeatedTasksWithSubTasksOfMixedTypes.is_concrete()
SimulatorSupportsRepeatedTasksWithVectorRangesSimulatorSupportsSubstitutingAlgorithmsSimulatorSupportsUniformTimeCoursesWithNonZeroInitialTimesSimulatorSupportsUniformTimeCoursesWithNonZeroOutputStartTimes
- biosimulators_test_suite.test_case.utils module
Submodules#
biosimulators_test_suite.config module#
Configuration
- Author:
Jonathan Karr <karr@mssm.edu>
- Date:
2021-01-30
- Copyright:
2021, Center for Reproducible Biomedical Modeling
- License:
MIT
- class biosimulators_test_suite.config.Config(pull_docker_image=None, docker_hub_username=None, docker_hub_token=None, biosimulators_auth_endpoint=None, biosimulators_audience=None, biosimulators_api_client_id=None, biosimulators_api_client_secret=None, biosimulators_prod_api_endpoint=None, biosimulators_dev_api_endpoint=None, biosimulators_curator_gh_ids=None, biosimulators_default_specifications_version=None, biosimulators_default_image_version=None, biosimulators_docker_registry_url=None, biosimulators_docker_registry_username=None, biosimulators_docker_registry_token=None, biosimulators_docker_image_url_pattern=None, runbiosimulations_auth_endpoint=None, runbiosimulations_audience=None, runbiosimulations_api_client_id=None, runbiosimulations_api_client_secret=None, runbiosimulations_api_endpoint=None, test_case_timeout=None, user_to_exec_in_simulator_containers=None, singularity_image_dirname=None)[source]#
Bases:
objectConfiguration
- pull_docker_image[source]#
whether to pull the Docker image for the simulator (default:
True)- Type:
bool
- biosimulators_curator_gh_ids[source]#
GitHub user ids of the BioSimulators curators
- Type:
listofstr
- biosimulators_default_specifications_version[source]#
Default version of the BioSimulators simulation specifications
- Type:
str
- biosimulators_default_image_version[source]#
Default version of the BioSimulators Docker image format
- Type:
str
- biosimulators_docker_registry_username[source]#
username for Docker registry for simulators
- Type:
str
- biosimulators_docker_image_url_pattern[source]#
URL pattern for Docker images for simulators
- Type:
str
- runbiosimulations_auth_endpoint[source]#
Authentification endpoint for the runBioSimulations API
- Type:
str
- user_to_exec_in_simulator_containers[source]#
user id or name to execute calls inside simulator containers
Use
_CURRENT_USER_to indicate that the Docker container should execute commands as the current user (os.getuid())Use the format
<name|uid>[:<group|gid>]to indicate any other user/group that the Docker container should use to execute commands
- Type:
strorNone
biosimulators_test_suite.data_model module#
Data model for test cases for validating simulators
- Author:
Jonathan Karr <karr@mssm.edu>
- Date:
2020-12-21
- Copyright:
2020, Center for Reproducible Biomedical Modeling
- License:
MIT
- class biosimulators_test_suite.data_model.AlertType(value)[source]#
Bases:
str,EnumType of alert upon the failure of a test case
- class biosimulators_test_suite.data_model.ExpectedSedDataSet(id=None, label=None)[source]#
Bases:
objectAn expected SED report
- Attributes
id (
str): id label (str): label
- class biosimulators_test_suite.data_model.ExpectedSedPlot(id=None)[source]#
Bases:
objectAn expected SED report
- Attributes
id (
str): id
- class biosimulators_test_suite.data_model.ExpectedSedReport(id=None, data_sets=None, points=None, values=None)[source]#
Bases:
objectAn expected SED report
- Attributes
id (
str): id data_sets (listofExpectedSedDataSet): labels of expected data sets points (tupleofint): number of expected points of values (dictofstrtodictoflist): expected values of data sets or elements of data sets
- class biosimulators_test_suite.data_model.OutputMedium(value)[source]#
Bases:
str,EnumOutput medium
- class biosimulators_test_suite.data_model.SedTaskRequirements(model_format=None, model_format_features=None, simulation_algorithm=None)[source]#
Bases:
objectRequired model format for simulation algorithm for each task in a SED document
- class biosimulators_test_suite.data_model.TestCase(id=None, name=None, description=None, output_medium=OutputMedium.console)[source]#
Bases:
ABCA test case for validating a simulator
- abstract eval(specifications, working_dirname, synthetic_archives_dir=None, dry_run=False, cli=None)[source]#
Evaluate a simulator’s performance on a test case
- Parameters:
specifications (
dict) – specifications of the simulator to validateworking_dirname (
str) – directory for temporary files for evaluating test casesynthetic_archives_dir (
str, optional) – Directory to save the synthetic COMBINE/OMEX archives generated by the test casesdry_run (
bool, optional) – ifTrue, do not use the simulator to execute COMBINE/OMEX archives.cli (
str, optional) – command-line interface to use to execute the tests involving the simulation of COMBINE/OMEX archives rather than a Docker image
- Raises:
SkippedTestCaseException – if the test case is not applicable to the simulator
Exception – if the simulator did not pass the test case
biosimulators_test_suite.exceptions module#
Common exceptions for test cases
- Author:
Jonathan Karr <karr@mssm.edu>
- Date:
2020-12-21
- Copyright:
2020, Center for Reproducible Biomedical Modeling
- License:
MIT
- exception biosimulators_test_suite.exceptions.InvalidOutputsException[source]#
Bases:
TestCaseExceptionException raised when outputs of execution of COMBINE/OMEX archive are not as expected
- exception biosimulators_test_suite.exceptions.SkippedTestCaseException[source]#
Bases:
TestCaseExceptionException raised that indicates that a test case should be skipped
- exception biosimulators_test_suite.exceptions.TestCaseException[source]#
Bases:
ExceptionException raised when outputs of execution of COMBINE/OMEX archive are not as expected
- exception biosimulators_test_suite.exceptions.TimeoutException[source]#
Bases:
TestCaseExceptionException raised that indicates that a test case timed out
biosimulators_test_suite.exec_cli module#
Program for validating that simulation tools are consistent with the BioSimulators standards
- Author:
Jonathan Karr <karr@mssm.edu>
- Date:
2020-12-22
- Copyright:
2020, BioSimulators Team
- License:
MIT
- class biosimulators_test_suite.exec_cli.App(label=None, **kw)[source]#
Bases:
AppCommand line application
- class biosimulators_test_suite.exec_cli.BaseController(*args, **kw)[source]#
Bases:
ArgparseControllerBase controller for command line application
- class Meta[source]#
Bases:
object- arguments = [(['specifications'], {'type': <class 'str'>, 'help': 'Path or URL to the specifications of the simulator'}), (['-c', '--test-case'], {'type': <class 'str'>, 'nargs': '+', 'default': None, 'dest': 'case_ids', 'help': "Ids of test cases of evaluate (e.g., 'sedml.SimulatorSupportsModelAttributeChanges', 'published_project.SimulatorCanExecutePublishedProject:sbml-core/Caravagna-J-Theor-Biol-2010-tumor-suppressive-oscillations') substrings of ids of test cases to evaluate (e.g., 'sedml.', 'published_project.' to evaluate all SED-ML test cases or all test cases involving published projects). Default: evaluate all test cases"}), (['--cli'], {'default': None, 'help': 'Command-line interface to use to execute the tests involving the simulation of COMBINE/OMEX archives rather than a Docker image'}), (['--synthetic-archives-dir'], {'default': None, 'help': 'Directory to save the synthetic COMBINE/OMEX archives generated by the test cases'}), (['--report'], {'default': None, 'help': 'Path to save a report of the results in JSON format'}), (['--verbose'], {'action': 'store_true', 'help': 'If set, print the stdout and stderr of the execution of the tests in real time.'}), (['--work-dir'], {'default': None, 'help': 'Working directory for files for evaluating tests. This option enables intermediate files to be inspected rather than automatically cleaned up.'}), (['--do-not-validate-specs'], {'action': 'store_true', 'help': "If set, don't validate the specifications of the simulator."}), (['--do-not-log-std-out-err'], {'action': 'store_true', 'help': "If set, don't use capturer to collect stdout and stderr."}), (['--dry-run'], {'action': 'store_true', 'help': 'If set, create synthetic archives, but do not use the simulator to execute them.'}), (['-v', '--version'], {'action': 'version', 'version': '0.1.88'})][source]#
biosimulators_test_suite.exec_core module#
Utilities for validate containerized simulators
- Author:
Jonathan Karr <karr@mssm.edu>
- Date:
2020-12-21
- Copyright:
2020, Center for Reproducible Biomedical Modeling
- License:
MIT
- class biosimulators_test_suite.exec_core.SimulatorValidator(specifications, case_ids=None, verbose=False, synthetic_archives_dir=None, output_medium=OutputMedium.console, log_std_out_err=True, working_dirname=None, dry_run=False, cli=None, validate_specs=True)[source]#
Bases:
objectValidate that a Docker image for a simulator implements the BioSimulations simulator interface by checking that the image produces the correct outputs for one of more test cases (e.g., COMBINE archive)
- specifications[source]#
path or URL to the specifications of the simulator, or the specifications of the simulator
- Type:
strordict
- synthetic_archives_dir[source]#
Directory to save the synthetic COMBINE/OMEX archives generated by the test cases
- Type:
str
- log_std_out_err[source]#
whether to log the standard output and error generated by each test case
- Type:
bool
- cli[source]#
command-line interface to use to execute the tests involving the simulation of COMBINE/OMEX archives rather than a Docker image
- Type:
str
- eval_case(case, working_dirname)[source]#
Evaluate a test case for a simulator
- Parameters:
case (
TestCase) – test caseworking_dirname (
str) – directory for temporary files for evaluating test case
- Returns:
test case result
- Return type:
TestCaseResult
- find_cases(ids=None)[source]#
Find test cases
- Parameters:
ids (
listofstr, optional) – List of ids of test cases to verify. Ifidsis none, all test cases are verified.- Returns:
groups of test cases
- Return type:
collections.OrderedDictoftypes.ModuleTypetoTestCase
- find_cases_in_module(module, published_projects_test_cases, ids=None)[source]#
Discover test cases in a module
- Parameters:
module (
types.ModuleType) – moduleids (
listofstr, optional) – List of ids of test cases to verify. Ifidsis none, all test cases are verified.published_projects_test_cases (
listofpublished_project.SimulatorCanExecutePublishedProject) – test cases involving executing curated COMBINE/OMEX archives
- Returns:
test cases
- Return type:
listofTestCase
- run()[source]#
Validate that a Docker image for a simulator implements the BioSimulations simulator interface by checking that the image produces the correct outputs for test cases (e.g., COMBINE archive)
- Returns:
results of executing test cases
- Return type:
listTestCaseResult
- static summarize_results(results, debug=False, output_medium=OutputMedium.console)[source]#
Get a summary of the results of a set of test cases
- Parameters:
results (
listTestCaseResult) – results of executing test casesdebug (
bool, optional) – whether to display traceback information about each error with additional information for debuggingoutput_medium (
OutputMedium, optional) – environment where outputs will be sent
- Returns:
tuplestr: summary of results of test caseslistofstr: details of failureslistofstr: details of warningslistofstr: details of skips
biosimulators_test_suite.exec_gh_action module#
Methods for processing submissions to the BioSimulators registry (CI workflows for reviewing and committing simulators to the registry)
- Author:
Jonathan Karr <karr@mssm.edu>
- Date:
2020-12-06
- Copyright:
2020, Center for Reproducible Biomedical Modeling
- License:
MIT
- class biosimulators_test_suite.exec_gh_action.ValidateCommitSimulatorGitHubAction[source]#
Bases:
GitHubActionAction to validate a containerized simulator
- classmethod add_comment_to_issue(issue_number, comment, alternative_comment=None, max_len=65536)[source]#
Post a comment to the GitHub issue
- Parameters:
issue_number (
str) – issue numbercomment (
str) – commentalternative_comment (
str, optional) – optional alternative comment to try posting to the GitHub issuemax_len (
int, optional) – maximum comment length accepted by GitHub
- commit_simulator(submission, specifications, existing_version_specifications, test_results)[source]#
Commit simulator to the BioSimulators registry
- Parameters:
submission (
SimulatorSubmission) – simulator submissionspecifications (
dict) – specifications of a simulation toolexisting_version_specifications (
listofdict) – specifications of other versions of simulation tooltest_results (
listofTestCaseResults) – results of test cases
- does_submission_have_approved_label()[source]#
Determine whether an issue for submitting a simulator already has the approved label
- Returns:
True, if the issue for the submission already has the approved label- Return type:
bool
- exec_core(submission, submitter)[source]#
Validate simulator
Validate specifications
Validate image
- Parameters:
submission (
SimulatorSubmission) – simulator submissionsubmitter (
str) – GitHub id of the submitter
- Returns:
dict: specifications of a simulation toollistofTestCaseResults: results of test cases
- Return type:
tuple
- get_auth_headers_for_biosimulations_api(endpoint, audience, client_id, client_secret)[source]#
Get authorization headers for using one of the BioSimulations REST APIs (BioSimulators, runBioSimulations, etc.).
- Parameters:
endpoint (
str) – URL for getting an authentication tokenaudience (
str) – API audienceclient_id (
str) – id for this clientclient_secret (
str) – secret for this client
- Returns:
authorization headers
- Return type:
dict
- get_initial_message(submission, submitter)[source]#
Peport message that validation is starting
- Parameters:
submission (
SimulatorSubmission) – simulator submissionsubmitter (
str) – GitHub user name of person who executed the submission
- is_other_version_of_simulator_validated(specifications, existing_version_specifications)[source]#
Determine whether another version of the simulation tool has already been approved
- Parameters:
specifications (
dict) – specifications of a simulation toolexisting_version_specifications (
listofdict) – specifications of other versions of simulation tool
- Returns:
True, if the simulation tool has already been approved- Return type:
bool
- is_simulator_approved(specifications, existing_version_specifications)[source]#
Determine whether a simulation tool has already been approved
- Parameters:
specifications (
dict) – specifications of a simulation toolexisting_version_specifications (
listofdict) – specifications of other versions of simulation tool
- Returns:
True, if the simulation tool has already been approved- Return type:
bool
- is_submission_latest_version_of_simulator(specifications, existing_version_specifications)[source]#
Determine whether the submitted version the latest version of the simulator (greatest tag)
- Parameters:
specifications (
dict) – specifications of a simulation toolexisting_version_specifications (
listofdict) – specifications of other versions of simulation tool
- Returns:
Trueif the submitted version if the latest version of the simulator- Return type:
bool
- post_entry_to_biosimulators_api(specifications, existing_version_specifications, biosimulators_api_endpoint)[source]#
Post the simulation to the BioSimulators database
- Parameters:
specifications (
dict) – specifications of a simulation toolexisting_version_specifications (
listofdict) – specifications of other versions of simulation toolbiosimulators_api_endpoint (
str) – endpoint for the BioSimulators API (e.g.,https://api.biosimulators.org)
- push_image(specifications, existing_version_specifications)[source]#
Push the image for a simulation tool to the GitHub Container Registry
- Parameters:
specifications (
dict) – specifications of a simulation toolexisting_version_specifications (
listofdict) – specifications of other versions of simulation tool
- trigger_conversion_of_docker_image_to_singularity(specifications)[source]#
Post the simulation to the BioSimulators database
- Parameters:
specifications (
dict) – specifications of a simulation tool
biosimulators_test_suite.utils module#
Utility methods
- Author:
Jonathan Karr <karr@mssm.edu>
- Date:
2021-06-05
- Copyright:
2021, Center for Reproducible Biomedical Modeling
- License:
MIT
- biosimulators_test_suite.utils.get_singularity_image_filename(docker_image)[source]#
Get the location where a Singularity version of a Docker image should be saved
- Parameters:
docker_image (
str) – URL for the Docker version of the image- Returns:
path where a Singularity version of a Docker image should be saved
- Return type:
str
biosimulators_test_suite.warnings module#
Common warnings for test cases
- Author:
Jonathan Karr <karr@mssm.edu>
- Date:
2020-12-21
- Copyright:
2020, Center for Reproducible Biomedical Modeling
- License:
MIT
- exception biosimulators_test_suite.warnings.IgnoredTestCaseWarning[source]#
Bases:
TestCaseWarningWarning that a test case was ignored
- exception biosimulators_test_suite.warnings.InvalidOutputsWarning[source]#
Bases:
TestCaseWarningWarning that the outputs of the execution of a COMBINE/OMEX archive were not as expected
- exception biosimulators_test_suite.warnings.SimulatorRuntimeErrorWarning[source]#
Bases:
TestCaseWarning,RuntimeWarningWarning that the execution of a test case failed