I have a test file in my module's t/ directory that does a use on a TestUtils files which has some variables and routines:
use Test;
use TestUtils;
plan 4;
check_cmd_output('No arguments');
check_cmd_output('Successfully ingested', test_md_file);
check_cmd_output('Successfully ingested', test_md_file, 1);
check_cmd_output('Successfully ingested', vimwiki_arg_sim());
It works fine. However, Comma was complaining about TestUtils not being found "in the ecosystem" as well as throwing errors with identifiers from the TestUtils module that it was not loading:
I was able to stop Comma from complaining by:
- Exporting the identifiers in the
TestUtilsfile - Fully qualifying the identifiers in my test file with something like:
TestUtils::check_cmd_output(...) - Adding
TestUtilsto theprovideshash in the META6.json file.
I'm thinking there is probably a better way. I tried doing stuff like use lib 't' and use lib '.' but that did not help. Thanks.

Comma doesn't handle this situation perfectly; it understands (following the IntelliJ platform naming conventions):
usestatements within the project (anything not resolved is assumed to be from the module ecosystem)xtdirectory)These are, however, mutually exclusive. If the
TestUtilsmodule were to be placed in alibdirectory inside oft, then thatlibdirectory could be marked as a source root, and the symbols should be resolved.