The data unification module is a bit of a disaster currently. The module alone is in need of some refactoring to make the complex logic more comprehensible.
However, while refactoring the module itself, we can also separate out this logic from the PCG.Command.Read.Unification module and into it's own pcg-data-unification sub library which will depend on pcg-data-normalization and the core data structures library which contains the Bio module.
This separation into a sub library will make the unification logic more accessible for unit and integration testing, allowing for Arbitrary instances to create unified objects.
The data unification module is a bit of a disaster currently. The module alone is in need of some refactoring to make the complex logic more comprehensible.
However, while refactoring the module itself, we can also separate out this logic from the
PCG.Command.Read.Unification
module and into it's ownpcg-data-unification
sub library which will depend onpcg-data-normalization
and the core data structures library which contains theBio
module.This separation into a sub library will make the unification logic more accessible for unit and integration testing, allowing for
Arbitrary
instances to create unified objects.