Closed koenhelwegen closed 2 years ago
- There is still a minor issue with relative paths to the config files that needs to be resolved.
To solve this issue, I would suggest to use the mfilename
function:
configFile = fullfile(fileparts(mfilename('fullpath')), ...
'assets/', phantomSub, '/misc/cato_structural_config.json');
To solve this issue, I would suggest to use the mfilename function
Fixed in 1fa4496.
As discussed, we'll resolve the FSL dependency later and add this to CI at that point, meaning this PR is ready to be merged from my site!
This PR adds integration tests using three basic phantoms, generated with https://github.com/ecaruyer/phantomas.
To Do
Currently CATO uses the FreeSurfer utility-> we'll do this latermri_info
, complicating any CI. I would be in favor of removing this dependencyAdd to Github Actions (see https://github.com/mathworks/ci-configuration-examples).Phantoms
Phantom
sub0
contains four regions of interest, and a single fiber stream connecting regions 2 and 4 (so regions 1 and 3 are not connected to anything, and there are no complications in terms of crossing fibers). This is a basic check to see if all the code runs and a correct connectivity matrix is generated. As a bonus, it checks the 'edge case' of unconnected ROIs.Phantom
sub1
contains the same four regions, but now with two fiber streams. The fiber streams don't get close: This should catch any weirdness with flipped gradient directions etc.Phantom
sub2
is a crossing fiber example. Where the first two are tested withDTI
,GQI
andGQI_DTI
, this one is only tested withGQI
andGQI_DTI
as reconstruction methods.