Modules should be independent and unit testable without other modules. Therefore, modules use an interface for external dependencies which are "joined" together at a higher level instead of hard coded module imports (cross-references). Thus, each module can be tested on its own using a mock or fake of the "soft dependency".
Modules should be independent and unit testable without other modules. Therefore, modules use an interface for external dependencies which are "joined" together at a higher level instead of hard coded module imports (cross-references). Thus, each module can be tested on its own using a mock or fake of the "soft dependency".