Skip to content

feat: unit tests for functions #414

@edkerk

Description

@edkerk

The testing/unit_tests folder now already includes tests for many functions (as of 5a65fe0). Ideally this should cover all functions (*.m files, except from those in the legacy and software folders). Here the progress is tracked. Some functions do not have their own tested, but are run when another function is tested. The tests are typically not comprehensive: they do not test all possible functionality (for instance different scenarios where different types of input are provided), but they are testing at least the most common use of each function.

Click here to show the list
  • INIT\getINITModel.m
  • INIT\runINIT.m
  • core\FSEOF.m
  • core\addExchangeRxns.m
  • core\addGenesRaven.m
  • core\addMets.m
  • core\addRxns.m
  • core\addRxnsGenesMets.m
  • core\addTransport.m
  • core\analyzeSampling.m
  • core\buildEquation.m (via addRxns)
  • core\canConsume.m
  • core\canProduce.m
  • core\changeGeneAssoc.m
  • core\changeGrRules.m
  • core\changeRxns.m
  • core\checkModelStruct.m (via exportModel)
  • core\checkProduction.m
  • core\checkRxn.m
  • core\checkTasks.m
  • core\compareMultipleModels.m
  • core\compareRxnsGenesMetsComps.m
  • core\constructEquations.m (via exportToExcelFormat)
  • core\constructS.m (via addRxns)
  • core\consumeSomething.m
  • core\contractModel.m
  • core\convertCharArray.m (via many functions)
  • core\convertToIrrev.m
  • core\copyToComps.m
  • core\deleteUnusedGenes.m
  • core\dispEM.m
  • core\expandModel.m
  • core\fillGaps.m
  • core\findGeneDeletions.m
  • core\findRAVENroot.m (via many functions)
  • core\fitParameters.m
  • core\fitTasks.m
  • core\followChanged.m
  • core\followFluxes.m
  • core\gapReport.m
  • core\generateNewIds.m (via addRxns)
  • core\getAllRxnsFromGenes.m
  • core\getAllSubGraphs.m
  • core\getAllowedBounds.m
  • core\getElementalBalance.m
  • core\getEssentialRxns.m
  • core\getExchangeRxns.m
  • core\getExpressionStructure.m
  • core\getFluxZ.m
  • core\getIndexes.m (via many functions)
  • core\getMetsInComp.m
  • core\getMinNrFluxes.m (via solveLP)
  • core\getModelFromHomology.m
  • core\getObjectiveString.m
  • core\getRxnsInComp.m
  • core\getTransportRxns.m
  • core\guessComposition.m
  • core\haveFlux.m (via canConsume)
  • core\makeSomething.m
  • core\mapCompartments.m
  • core\mergeCompartments.m
  • core\mergeModels.m (via copyToComps)
  • core\parseFormulas.m (via checkModelStruct)
  • core\parseRxnEqu.m (via importExcelModel)
  • core\parseTaskList.m
  • core\permuteModel.m (via sortIdentifiers)
  • core\predictLocalization.m
  • core\printFluxes.m
  • core\printModel.m
  • core\printModelStats.m
  • core\randomSampling.m
  • core\removeBadRxns.m
  • core\removeGenes.m
  • core\removeMets.m
  • core\removeReactions.m
  • core\replaceMets.m
  • core\reporterMetabolites.m
  • core\setExchangeBounds.m
  • core\setParam.m (via various functions)
  • core\simplifyModel.m (via various functions)
  • core\sortModel.m
  • core\standardizeGrRules.m (via various functions)
  • external\combineMetaCycKEGGModels.m
  • external\getBlast.m
  • external\getBlastFromExcel.m
  • external\getDiamond.m
  • external\getWoLFScores.m
  • external\makeFakeBlastStructure.m
  • external\parseScores.m
  • external\updateDocumentation.m
  • external\kegg\constructMultiFasta.m
  • external\kegg\getGenesFromKEGG.m
  • external\kegg\getKEGGModelForOrganism.m
  • external\kegg\getMetsFromKEGG.m
  • external\kegg\getModelFromKEGG.m
  • external\kegg\getPhylDist.m
  • external\kegg\getRxnsFromKEGG.m
  • external\kegg\getWSLpath.m
  • external\metacyc\addSpontaneousRxns.m
  • external\metacyc\getEnzymesFromMetaCyc.m
  • external\metacyc\getMetaCycModelForOrganism.m
  • external\metacyc\getMetsFromMetaCyc.m
  • external\metacyc\getModelFromMetaCyc.m
  • external\metacyc\getRxnsFromMetaCyc.m
  • external\metacyc\linkMetaCycKEGGRxns.m
  • hpa\parseHPA.m
  • hpa\parseHPArna.m
  • hpa\scoreModel.m
  • installation\addRavenToUserPath.m
  • installation\checkFunctionUniqueness.m
  • installation\checkInstallation.m
  • io\SBMLFromExcel.m
  • io\addJavaPaths.m (via importExcelModel)
  • io\checkFileExistence.m (via various functions)
  • io\cleanSheet.m (via importExcelModel)
  • io\closeModel.m
  • io\exportForGit.m
  • io\exportModel.m
  • io\exportModelToSIF.m
  • io\exportToExcelFormat.m
  • io\exportToTabDelimited.m
  • io\getFullPath.m (via various functions)
  • io\getMD5Hash.m (via getBlast)
  • io\getToolboxVersion.m
  • io\importExcelModel.m
  • io\importModel.m
  • io\loadSheet.m (via importExcelModel)
  • io\loadWorkbook.m (via importExcelModel)
  • io\sortIdentifiers.m
  • io\startup.m
  • io\writeSheet.m (via exportToExcelFormat)
  • io\writeYaml.m
  • pathway\colorPathway.m
  • pathway\getPathwayDimensions.m
  • pathway\mapPathwayRxnNames.m
  • pathway\markPathwayWithExpression.m
  • pathway\markPathwayWithFluxes.m
  • pathway\trimPathway.m
  • plotting\colorSubsystem.m
  • plotting\drawMap.m
  • plotting\drawPathway.m
  • plotting\getColorCodes.m
  • plotting\plotAdditionalInfo.m
  • plotting\plotLabels.m
  • plotting\setColorToMapRxns.m
  • plotting\setOmicDataToRxns.m
  • plotting\setTitle.m
  • solver\checkSolution.m (via solveLP)
  • solver\optimizeProb.m (via solveLP)
  • solver\qMOMA.m
  • solver\setRavenSolver.m (via solveLP)
  • solver\solveLP.m
  • solver\solveQP.m
  • struct_conversion\editMiriam.m
  • struct_conversion\extractMiriam.m
  • struct_conversion\ravenCobraWrapper.m
  • struct_conversion\standardizeModelFieldOrder.m

Not sure whether these require tests, and whether it should be the _solution version that is tested:

  • tutorial\tutorial1.m
  • tutorial\tutorial2.m
  • tutorial\tutorial2_solutions.m
  • tutorial\tutorial3.m
  • tutorial\tutorial3_solutions.m
  • tutorial\tutorial4.m
  • tutorial\tutorial4_solutions.m
  • tutorial\tutorial5.m
  • tutorial\tutorial6.m

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions