diff --git a/q2_moshpit/__init__.py b/q2_moshpit/__init__.py index 1ff8fc05..983726ac 100644 --- a/q2_moshpit/__init__.py +++ b/q2_moshpit/__init__.py @@ -8,7 +8,6 @@ from . import abundance from . import busco from . import eggnog -from . import partition from . import prodigal from ._version import get_versions from .dereplication import dereplicate_mags @@ -31,8 +30,8 @@ __all__ = [ 'metabat2', 'bracken', 'kraken_class', 'kraken_db', 'kaiju_class', 'kaiju_db', 'dereplicate_mags', 'eggnog', - 'busco', 'prodigal', 'kraken_helpers', 'partition', - 'filter_derep_mags', 'filter_mags', 'get_feature_lengths', + 'busco', 'prodigal', 'kraken_helpers', 'filter_derep_mags', + 'filter_mags', 'get_feature_lengths', 'multiply_tables', '_multiply_tables', '_multiply_tables_pa', '_multiply_tables_relative', 'abundance', 'filter_reads_pangenome' ] diff --git a/q2_moshpit/busco/__init__.py b/q2_moshpit/busco/__init__.py index ab0d0d2a..10fb8e66 100644 --- a/q2_moshpit/busco/__init__.py +++ b/q2_moshpit/busco/__init__.py @@ -8,7 +8,9 @@ from .busco import evaluate_busco, _evaluate_busco, _visualize_busco from .database import fetch_busco_db +from .partition import collate_busco_results __all__ = [ - "evaluate_busco", "_evaluate_busco", "_visualize_busco", "fetch_busco_db" + "evaluate_busco", "_evaluate_busco", "_visualize_busco", "fetch_busco_db", + "collate_busco_results" ] diff --git a/q2_moshpit/busco/busco.py b/q2_moshpit/busco/busco.py index 4f3678d2..aa6a007f 100644 --- a/q2_moshpit/busco/busco.py +++ b/q2_moshpit/busco/busco.py @@ -296,7 +296,7 @@ def evaluate_busco( partition_action = "partition_sample_data_mags" else: partition_action = "partition_feature_data_mags" - partition_mags = ctx.get_action("moshpit", partition_action) + partition_mags = ctx.get_action("types", partition_action) (partitioned_mags, ) = partition_mags(bins, num_partitions) results = [] diff --git a/q2_moshpit/partition/busco.py b/q2_moshpit/busco/partition.py similarity index 100% rename from q2_moshpit/partition/busco.py rename to q2_moshpit/busco/partition.py diff --git a/q2_moshpit/busco/tests/data/busco_results/collated/busco_results.tsv b/q2_moshpit/busco/tests/data/busco_results/collated/busco_results.tsv new file mode 100644 index 00000000..21642df3 --- /dev/null +++ b/q2_moshpit/busco/tests/data/busco_results/collated/busco_results.tsv @@ -0,0 +1,7 @@ +mag_id sample_id input_file dataset complete single duplicated fragmented missing n_markers scaffold_n50 contigs_n50 percent_gaps scaffolds length +bec9c09a-62c3-4fbb-8f7f-9fdf9aefc02f SRR13221817 bec9c09a-62c3-4fbb-8f7f-9fdf9aefc02f.fasta bacteria_odb10 28.2 27.4 0.8 8.9 62.9 124 4785 4785 0.000% 265 1219165 +5978e667-0476-4921-8cc2-34b9d1b508c1 SRR13221817 5978e667-0476-4921-8cc2-34b9d1b508c1.fasta bacteria_odb10 1.6 1.6 0.0 1.6 96.8 124 3548 3548 0.000% 67 245922 +625c95e6-ac2f-4e6e-9470-af8cd11c75dd SRR13221817 625c95e6-ac2f-4e6e-9470-af8cd11c75dd.fasta bacteria_odb10 26.6 26.6 0.0 3.2 70.2 124 78679 78679 0.000% 17 714893 +6ed8c097-1c87-4019-8b38-b95507011b41 SRR14143412 6ed8c097-1c87-4019-8b38-b95507011b41.fasta bacteria_odb10 8.1 8.1 0.0 0.8 91.1 124 74198 74198 0.000% 11 560715 +bf2c0af0-83ba-44a6-b550-3b7884a62a82 SRR14143412 bf2c0af0-83ba-44a6-b550-3b7884a62a82.fasta bacteria_odb10 95.9 93.5 2.4 2.4 1.7 124 80820 80820 0.000% 92 4253319 +a2401d15-802f-42c3-9eb4-c282e2141b14 SRR14143412 a2401d15-802f-42c3-9eb4-c282e2141b14.fasta bacteria_odb10 89.5 89.5 0.0 1.6 8.9 124 31708 31708 0.000% 106 2120157 \ No newline at end of file diff --git a/q2_moshpit/busco/tests/data/busco_results/sample1/busco_results.tsv b/q2_moshpit/busco/tests/data/busco_results/sample1/busco_results.tsv new file mode 100644 index 00000000..9c047891 --- /dev/null +++ b/q2_moshpit/busco/tests/data/busco_results/sample1/busco_results.tsv @@ -0,0 +1,4 @@ +mag_id sample_id input_file dataset complete single duplicated fragmented missing n_markers scaffold_n50 contigs_n50 percent_gaps scaffolds length +bec9c09a-62c3-4fbb-8f7f-9fdf9aefc02f SRR13221817 bec9c09a-62c3-4fbb-8f7f-9fdf9aefc02f.fasta bacteria_odb10 28.2 27.4 0.8 8.9 62.9 124 4785 4785 0.000% 265 1219165 +5978e667-0476-4921-8cc2-34b9d1b508c1 SRR13221817 5978e667-0476-4921-8cc2-34b9d1b508c1.fasta bacteria_odb10 1.6 1.6 0.0 1.6 96.8 124 3548 3548 0.000% 67 245922 +625c95e6-ac2f-4e6e-9470-af8cd11c75dd SRR13221817 625c95e6-ac2f-4e6e-9470-af8cd11c75dd.fasta bacteria_odb10 26.6 26.6 0.0 3.2 70.2 124 78679 78679 0.000% 17 714893 \ No newline at end of file diff --git a/q2_moshpit/busco/tests/data/busco_results/sample2/busco_results.tsv b/q2_moshpit/busco/tests/data/busco_results/sample2/busco_results.tsv new file mode 100644 index 00000000..de492cfa --- /dev/null +++ b/q2_moshpit/busco/tests/data/busco_results/sample2/busco_results.tsv @@ -0,0 +1,4 @@ +mag_id sample_id input_file dataset complete single duplicated fragmented missing n_markers scaffold_n50 contigs_n50 percent_gaps scaffolds length +6ed8c097-1c87-4019-8b38-b95507011b41 SRR14143412 6ed8c097-1c87-4019-8b38-b95507011b41.fasta bacteria_odb10 8.1 8.1 0.0 0.8 91.1 124 74198 74198 0.000% 11 560715 +bf2c0af0-83ba-44a6-b550-3b7884a62a82 SRR14143412 bf2c0af0-83ba-44a6-b550-3b7884a62a82.fasta bacteria_odb10 95.9 93.5 2.4 2.4 1.7 124 80820 80820 0.000% 92 4253319 +a2401d15-802f-42c3-9eb4-c282e2141b14 SRR14143412 a2401d15-802f-42c3-9eb4-c282e2141b14.fasta bacteria_odb10 89.5 89.5 0.0 1.6 8.9 124 31708 31708 0.000% 106 2120157 \ No newline at end of file diff --git a/q2_moshpit/busco/tests/test_partition.py b/q2_moshpit/busco/tests/test_partition.py new file mode 100644 index 00000000..edbc4703 --- /dev/null +++ b/q2_moshpit/busco/tests/test_partition.py @@ -0,0 +1,36 @@ +# ---------------------------------------------------------------------------- +# Copyright (c) 2022-2023, QIIME 2 development team. +# +# Distributed under the terms of the Modified BSD License. +# +# The full license is in the file LICENSE, distributed with this software. +# ---------------------------------------------------------------------------- +import os + +import pandas as pd +from qiime2.plugin.testing import TestPluginBase + +from q2_moshpit.busco.partition import collate_busco_results +from q2_moshpit.busco.types import BUSCOResultsDirectoryFormat + + +class TestBUSCOPlots(TestPluginBase): + package = "q2_moshpit.busco.tests" + + def test_collate_busco_results(self): + p1 = self.get_data_path("busco_results/sample1") + p2 = self.get_data_path("busco_results/sample2") + + busco_results = [ + BUSCOResultsDirectoryFormat(p1, mode="r"), + BUSCOResultsDirectoryFormat(p2, mode="r") + ] + + collated_busco_result = collate_busco_results(busco_results) + + obs = pd.read_csv( + os.path.join(str(collated_busco_result), "busco_results.tsv")) + exp = pd.read_csv( + self.get_data_path("busco_results/collated/busco_results.tsv")) + + pd.testing.assert_frame_equal(obs, exp) diff --git a/q2_moshpit/eggnog/annotation.py b/q2_moshpit/eggnog/annotation.py index bd9021dd..2848c2b5 100644 --- a/q2_moshpit/eggnog/annotation.py +++ b/q2_moshpit/eggnog/annotation.py @@ -68,10 +68,12 @@ def eggnog_annotate( num_partitions=None ): _eggnog_annotate = ctx.get_action("moshpit", "_eggnog_annotate") - collate_annotations = ctx.get_action("moshpit", "collate_annotations") + collate_annotations = ctx.get_action( + "types", "collate_ortholog_annotations" + ) if eggnog_hits.type <= SampleData[Orthologs]: - partition_method = ctx.get_action("moshpit", "partition_orthologs") + partition_method = ctx.get_action("types", "partition_orthologs") else: raise NotImplementedError() diff --git a/q2_moshpit/eggnog/orthologs/common.py b/q2_moshpit/eggnog/orthologs/common.py index e9ea59d7..02c8bf45 100644 --- a/q2_moshpit/eggnog/orthologs/common.py +++ b/q2_moshpit/eggnog/orthologs/common.py @@ -74,17 +74,17 @@ def _run_eggnog_search_pipeline( - collated_tables: The collated feature tables. """ if sequences.type <= FeatureData[MAG]: - plugin, action_name = "moshpit", "partition_feature_data_mags" + plugin, action_name = "types", "partition_feature_data_mags" elif sequences.type <= SampleData[Contigs]: plugin, action_name = "assembly", "partition_contigs" elif sequences.type <= SampleData[MAGs]: - plugin, action_name = "moshpit", "partition_sample_data_mags" + plugin, action_name = "types", "partition_sample_data_mags" else: raise NotImplementedError() partition_method = ctx.get_action(plugin, action_name) _eggnog_search = ctx.get_action("moshpit", search_action) - collate_hits = ctx.get_action("moshpit", "collate_orthologs") + collate_hits = ctx.get_action("types", "collate_orthologs") _eggnog_feature_table = ctx.get_action("moshpit", "_eggnog_feature_table") (partitioned_sequences,) = partition_method(sequences, num_partitions) diff --git a/q2_moshpit/kraken2/classification.py b/q2_moshpit/kraken2/classification.py index 88b3c3f3..044b25e0 100644 --- a/q2_moshpit/kraken2/classification.py +++ b/q2_moshpit/kraken2/classification.py @@ -81,7 +81,7 @@ def classify_kraken2( partition_method = ctx.get_action("assembly", "partition_contigs") elif seqs.type <= SampleData[MAGs]: partition_method = ctx.get_action( - "moshpit", "partition_sample_data_mags" + "types", "partition_sample_data_mags" ) # FeatureData[MAG] is not parallelized elif seqs.type <= FeatureData[MAG]: diff --git a/q2_moshpit/partition/__init__.py b/q2_moshpit/partition/__init__.py deleted file mode 100644 index 0ba1e61b..00000000 --- a/q2_moshpit/partition/__init__.py +++ /dev/null @@ -1,24 +0,0 @@ -# ---------------------------------------------------------------------------- -# Copyright (c) 2023, QIIME 2 development team. -# -# Distributed under the terms of the Modified BSD License. -# -# The full license is in the file LICENSE, distributed with this software. -# ---------------------------------------------------------------------------- -from .annotations import collate_annotations -from .mags import ( - collate_feature_data_mags, collate_sample_data_mags, - partition_feature_data_mags, partition_sample_data_mags, - -) -from .ortholog import ( - collate_orthologs, partition_orthologs -) -from .busco import collate_busco_results - -__all__ = [ - "collate_feature_data_mags", "collate_sample_data_mags", - "partition_feature_data_mags", "partition_sample_data_mags", - "collate_orthologs", "partition_orthologs", "collate_annotations", - "collate_busco_results" -] diff --git a/q2_moshpit/partition/annotations.py b/q2_moshpit/partition/annotations.py deleted file mode 100644 index 038bc02b..00000000 --- a/q2_moshpit/partition/annotations.py +++ /dev/null @@ -1,23 +0,0 @@ -# ---------------------------------------------------------------------------- -# Copyright (c) 2022-2023, QIIME 2 development team. -# -# Distributed under the terms of the Modified BSD License. -# -# The full license is in the file LICENSE, distributed with this software. -# ---------------------------------------------------------------------------- -from q2_types.genome_data import OrthologAnnotationDirFmt -from qiime2.util import duplicate - - -def collate_annotations( - ortholog_annotations: OrthologAnnotationDirFmt -) -> OrthologAnnotationDirFmt: - # Init output - collated_annotations = OrthologAnnotationDirFmt() - - # Copy annotations into output - for anno in ortholog_annotations: - for fp in anno.path.iterdir(): - duplicate(fp, collated_annotations.path / fp.name) - - return collated_annotations diff --git a/q2_moshpit/partition/mags.py b/q2_moshpit/partition/mags.py deleted file mode 100644 index 17f72fe5..00000000 --- a/q2_moshpit/partition/mags.py +++ /dev/null @@ -1,141 +0,0 @@ -# ---------------------------------------------------------------------------- -# Copyright (c) 2023, QIIME 2 development team. -# -# Distributed under the terms of the Modified BSD License. -# -# The full license is in the file LICENSE, distributed with this software. -# ---------------------------------------------------------------------------- -import os -import shutil -import numpy as np -import pandas as pd -from qiime2.util import duplicate -from .utils import _validate_mag_ids, _validate_num_partitions -from q2_types.per_sample_sequences import ( - MultiMAGSequencesDirFmt -) -from q2_types.feature_data_mag import ( - MAGSequencesDirFmt -) - - -def partition_feature_data_mags( - mags: MAGSequencesDirFmt, num_partitions: int = None -) -> MAGSequencesDirFmt: - """ - Returns a dictionary where each key is either the mag_id or an index, and - values are the new objects with the mags. - """ - partitioned_mags = {} - mags_all = [] - - # Get a list where every entry is a tuple representing one MAG - for mag_id, mag_fp in mags.feature_dict().items(): - mags_all.append((mag_fp, mag_id)) - - # Count number of mags and validate the num_partitions - num_mags = len(mags_all) - num_partitions = _validate_num_partitions(num_mags, num_partitions, "MAG") - _validate_mag_ids(num_partitions, num_mags, mags_all) - - # Split list MAGs into n arrays, where n = num_partitions - arrays_of_mags = np.array_split(mags_all, num_partitions) - - for i, _mag in enumerate(arrays_of_mags, 1): - result = MAGSequencesDirFmt() - - for mag_fp, mag_id in _mag: - duplicate(mag_fp, result.path / os.path.basename(mag_fp)) - - # If num_partitions == num_mags we will only have gone through one - # MAG in the above loop and will use its id as a key. Otherwise, we - # may have gone through multiple MAGs in the above loop and will be - # using indices for keys - if num_partitions == num_mags: - partitioned_mags[mag_id] = result - else: - partitioned_mags[i] = result - - return partitioned_mags - - -def partition_sample_data_mags( - mags: MultiMAGSequencesDirFmt, num_partitions: int = None -) -> MultiMAGSequencesDirFmt: - """ - Returns a dictionary where each key is either the mag_id or an index, and - values are the new objects with the mags. - """ - partitioned_mags = {} - mags_all = [{k: v} for k, v in mags.sample_dict().items()] - - num_partitions = _validate_num_partitions( - len(mags_all), num_partitions, "sample" - ) - - arrays_of_mags = np.array_split(mags_all, num_partitions) - - for i, samples in enumerate(arrays_of_mags, 1): - result = MultiMAGSequencesDirFmt() - all_samples = set(k for d in samples for k in d.keys()) - manifest = pd.read_csv(mags.path / "MANIFEST", index_col=None) - manifest = manifest[manifest["sample-id"].isin(all_samples)] - manifest.to_csv(result.path / "MANIFEST", index=False) - - for sample_dict in samples: - for sample_id, mag_dict in sample_dict.items(): - for mag_id, mag_fp in mag_dict.items(): - os.makedirs(result.path / sample_id, exist_ok=True) - duplicate( - mag_fp, - result.path / sample_id / os.path.basename(mag_fp) - ) - - # If num_partitions == num_samples we will only have gone through one - # sample in the above loop and will use its id as a key. Otherwise we - # may have gone through multiple MAGs in the above loop and will be - # using indices for keys - if num_partitions == len(mags_all): - partitioned_mags[sample_id] = result - else: - partitioned_mags[i] = result - - return partitioned_mags - - -def collate_sample_data_mags( - mags: MultiMAGSequencesDirFmt -) -> MultiMAGSequencesDirFmt: - collated_mags = MultiMAGSequencesDirFmt() - - # For every partition - for mag in mags: - - # For every sample in the partition - for file_or_dir in mag.path.iterdir(): - - if file_or_dir.is_dir(): - sample = file_or_dir - os.makedirs(collated_mags.path / sample.name, exist_ok=True) - - # For every mag in the sample - for mag in sample.iterdir(): - duplicate(mag, collated_mags.path / sample.name / mag.name) - - # If its a file, it should be the manifest - # Since its present many times it will be overwritten, but that ok - else: - manifest = file_or_dir - # Overwrite is necessary - shutil.copy(manifest, collated_mags.path / manifest.name) - - return collated_mags - - -def collate_feature_data_mags(mags: MAGSequencesDirFmt) -> MAGSequencesDirFmt: - collated_mags = MAGSequencesDirFmt() - for mag in mags: - for fp in mag.path.iterdir(): - duplicate(fp, collated_mags.path / fp.name) - - return collated_mags diff --git a/q2_moshpit/partition/ortholog.py b/q2_moshpit/partition/ortholog.py deleted file mode 100644 index 26b644c0..00000000 --- a/q2_moshpit/partition/ortholog.py +++ /dev/null @@ -1,74 +0,0 @@ -# ---------------------------------------------------------------------------- -# Copyright (c) 2023, QIIME 2 development team. -# -# Distributed under the terms of the Modified BSD License. -# -# The full license is in the file LICENSE, distributed with this software. -# ---------------------------------------------------------------------------- -import glob -import os -import shutil -import warnings - -import numpy as np -from q2_types.genome_data import SeedOrthologDirFmt -from qiime2.util import duplicate - - -def collate_orthologs(orthologs: SeedOrthologDirFmt) -> SeedOrthologDirFmt: - result = SeedOrthologDirFmt() - - for ortholog in orthologs: - for fp in ortholog.path.iterdir(): - shutil.move(fp, result.path / os.path.basename(fp)) - - return result - - -def partition_orthologs( - orthologs: SeedOrthologDirFmt, num_partitions: int = None -) -> SeedOrthologDirFmt: - """ - Returns a dictionary where each key is either the sample_id and - values are the new objects with the orthologs. - """ - partitioned_orthologs = {} - - # TODO: this logic should move to the format itself - orthologs = glob.glob(os.path.join(str(orthologs), "*.seed_orthologs")) - names = [ - os.path.basename(x).replace(".emapper.seed_orthologs", "") - for x in orthologs - ] - orthologs = list(zip(names, orthologs)) - - num_samples = len(orthologs) - if num_partitions is None: - num_partitions = num_samples - elif num_partitions > num_samples: - warnings.warn( - "You have requested a number of partitions" - f" '{num_partitions}' that is greater than your number" - f" of samples '{num_samples}.' Your data will be" - f" partitioned by sample into '{num_samples}'" - " partitions." - ) - num_partitions = num_samples - - orthologs = np.array_split(orthologs, num_partitions) - for i, samples in enumerate(orthologs, 1): - result = SeedOrthologDirFmt() - - for sample_id, sample_fp in samples: - duplicate(sample_fp, result.path / os.path.basename(sample_fp)) - - # If num_partitions == num_samples we will only have gone through one - # sample in the above loop and will use its id as a key. Otherwise we - # may have gone through multiple samples in the above loop and will be - # using indices for keys - if num_partitions == num_samples: - partitioned_orthologs[sample_id] = result - else: - partitioned_orthologs[i] = result - - return partitioned_orthologs diff --git a/q2_moshpit/partition/tests/__init__.py b/q2_moshpit/partition/tests/__init__.py deleted file mode 100644 index 20fea3f3..00000000 --- a/q2_moshpit/partition/tests/__init__.py +++ /dev/null @@ -1,7 +0,0 @@ -# ---------------------------------------------------------------------------- -# Copyright (c) 2023, QIIME 2 development team.n -# -# Distributed under the terms of the Modified BSD License. -# -# The full license is in the file LICENSE, distributed with this software. -# ---------------------------------------------------------------------------- diff --git a/q2_moshpit/partition/tests/data/annotations/a/a.annotations b/q2_moshpit/partition/tests/data/annotations/a/a.annotations deleted file mode 100644 index e69de29b..00000000 diff --git a/q2_moshpit/partition/tests/data/annotations/b/b.annotations b/q2_moshpit/partition/tests/data/annotations/b/b.annotations deleted file mode 100644 index e69de29b..00000000 diff --git a/q2_moshpit/partition/tests/data/annotations/c/c.annotations b/q2_moshpit/partition/tests/data/annotations/c/c.annotations deleted file mode 100644 index e69de29b..00000000 diff --git a/q2_moshpit/partition/tests/data/annotations/collated/a.annotations b/q2_moshpit/partition/tests/data/annotations/collated/a.annotations deleted file mode 100644 index e69de29b..00000000 diff --git a/q2_moshpit/partition/tests/data/annotations/collated/b.annotations b/q2_moshpit/partition/tests/data/annotations/collated/b.annotations deleted file mode 100644 index e69de29b..00000000 diff --git a/q2_moshpit/partition/tests/data/annotations/collated/c.annotations b/q2_moshpit/partition/tests/data/annotations/collated/c.annotations deleted file mode 100644 index e69de29b..00000000 diff --git a/q2_moshpit/partition/tests/data/collated/feature_data/24dee6fe-9b84-45bb-8145-de7b092533a1.fasta b/q2_moshpit/partition/tests/data/collated/feature_data/24dee6fe-9b84-45bb-8145-de7b092533a1.fasta deleted file mode 100644 index c072c82b..00000000 --- a/q2_moshpit/partition/tests/data/collated/feature_data/24dee6fe-9b84-45bb-8145-de7b092533a1.fasta +++ /dev/null @@ -1,4 +0,0 @@ ->NZ_00000000.1_contig1 -ATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATG ->NZ_00000000.1_contig2 -TTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGA diff --git a/q2_moshpit/partition/tests/data/collated/feature_data/fb0bc871-04f6-486b-a10e-8e0cb66f8de3.fasta b/q2_moshpit/partition/tests/data/collated/feature_data/fb0bc871-04f6-486b-a10e-8e0cb66f8de3.fasta deleted file mode 100644 index e5910508..00000000 --- a/q2_moshpit/partition/tests/data/collated/feature_data/fb0bc871-04f6-486b-a10e-8e0cb66f8de3.fasta +++ /dev/null @@ -1,4 +0,0 @@ ->NZ_CP018863.1_contig1 -GCCTCCTCCCAGTTCGTCTCAGCGCTGCTGCTGGTCGGCGCCAAATTCCGTAACGGGCTGCACCTCGAACATTCCGGCCAGAGCGTCCCCAGCCTGGACCACGTTGCCATGACCGTGGCGGTACTGCGCAGCGTCGGGGTGGAGGTAGACGATTCCCGGCAGAACCACTGGTGGTCCGGCCCGGACCGGTCAAGGCCTTCGACGTCACCGTCGAACAGGACCTTTCCAATGCCGGCCCCTTCCTCGCGGCAGCCCTGGCCACGAAGGGAACGGTTCGGATCCCAGGCTGGCCGGAGAAAACCACGCAGGTAGGTGACAAATGGCGCAGCATCCTGGCGCAACTCGGCGCCACTGTCAGCTACGAGAACGGCACCCTCACCGTAACCGGCGGGGCAGAGATCACCGGGGCGCAGCTCGCCGACACCAGCGAACTTGCCCCCACCACGGCGGCGCTCTGTGCCCTGGCCGGCAGCGAATCCAGGCTCACCGGAATTGCCCACTTGCGGGGACACGAAACAGACCGGCTGGCGGCTCTGGTCGCGGAAATCAATGCCTTGGGTGGCGACGCCGAAGAAACCGAAGACGGGTTGATCATCCGTCCGAGGCCACTGCATGGCGGGGTCTTCCATTCATATGAGGACCACAGGATGGCCACCGCCGGAGCCATTATCGGGCTGGCAGTCGAGGGCGTGGAAGTCGAAGACATCGGCACCACGGCCAAGACCATGCCCGAGTTCCCGCGGCTATGGCAGGACCTGTTCGAGACTTCCGTCCGCCAGTCCGAGGCGGGAGCGCTCTAAGGTGGTGCGCGGCAACCGTACGTGGGACGAGTCCGATGTCCGCATCCGTCCCAACAAGCGCGGCTCGCGTCCGCGTACCAAGGAACGGCCTGCCCACGAAGACGCCGTCATCGGGCGGATCATCACCGTGGACCGCGGCCGCTACACCGCGGTCGTCGATGAAGACACTGCCCGGGAACGGGTGGTTGTCGCCGCCCGTG ->NZ_CP018863.1_contig2 -CCCGGGAGCTTCGTCGCAGTCCGGTGGTGGCCGGCGACTTCGTAGCGCTCGTCGGTGACATTACCGGTGAGCCGGATACGTTGGCCCGGCTGGTCCGGATTGAGGAACGCCGGACGCTGTTGCGCCGCAGCGCCGACGATACAGATCCCGTGGAGCGGGTAGTCGTCGCCAATGCAGACCAGCTGGTCATCGTCGTGGCCGCCGCAAACCCCGAGCCGCGCACCGGTTTCATCGACCGCGCCTTGGTAGCGGCGTACGACGCCGGTATCAGCCCGCTGCTGTGCGTCACCAAAGCGGACGTCAAGGATCCCGAAGAACTGCTCTCCAACTACCGGCACCTGGACCTGCCCGTGATCGTCAGCCGGACGGCCGGCACGGAGGGCTCCGGGGTGGATGCACGGTCCGCCGACGGGCTGTCTGCCCGTCTCGACCGTGACGCCGTAGCGGCGCTCCGTGGCTATCTGGATGGGATGGTCAGCGTCATGCTCGGCCATTCGGGCGTGGGCAAGTCCACCATGGTCAATGCCCTCACGGGGGCGGAGCGCGCCACGGGGGGAGTCAACGCGGTGACCGGGCGGGGCCGGCATACCTCCTCCTCGGCGCTGGCCCTGAAGCTGGCCGACGCTCCGGCTGGCAGCTGGATCATCGACACGCCCGGCATCCGTTCTTTTGGACTGGCCCACGTGGACCCGGACCGGATCATTTCCGCTTTTCCCGATTTGGAGCCCGGGACGGCGGACTGCGAGCGGGGCTGCAAGCACGACGACCATGCCGTCAACTGCGGCGTGGACGCCTGGGTGGCCTCCGGGCAGGCCGGCGAATCCGGCCCGGCACGGCTGGCCTCGCTGCGCCGTTTGCTGGGAACGGAAGAACGCGCCCAGGCGAAGGAACTCGGGTTCCAGTAGCACCGCCGTCGTCGGTCAGGGACTTCACATCCCGCATCCGGCCGCCAAATAAGGATAAGTTGAAGCCTATGACCCGTGACGTTCAAAGCTATAAC diff --git a/q2_moshpit/partition/tests/data/collated/sample_data/MANIFEST b/q2_moshpit/partition/tests/data/collated/sample_data/MANIFEST deleted file mode 100644 index 9f6ba795..00000000 --- a/q2_moshpit/partition/tests/data/collated/sample_data/MANIFEST +++ /dev/null @@ -1,7 +0,0 @@ -sample-id,mag-id,filename -sample1,ca7012fc-ba65-40c3-84f5-05aa478a7585,sample1/ca7012fc-ba65-40c3-84f5-05aa478a7585.fasta -sample1,fb0bc871-04f6-486b-a10e-8e0cb66f8de3,sample1/fb0bc871-04f6-486b-a10e-8e0cb66f8de3.fasta -sample1,24dee6fe-9b84-45bb-8145-de7b092533a1,sample1/24dee6fe-9b84-45bb-8145-de7b092533a1.fasta -sample2,db03f8b6-28e1-48c5-a47c-9c65f38f7357,sample2/db03f8b6-28e1-48c5-a47c-9c65f38f7357.fasta -sample2,d65a71fa-4279-4588-b937-0747ed5d604d,sample2/d65a71fa-4279-4588-b937-0747ed5d604d.fasta -sample2,fa4d7420-d0a4-455a-b4d7-4fa66e54c9bf,sample2/fa4d7420-d0a4-455a-b4d7-4fa66e54c9bf.fasta diff --git a/q2_moshpit/partition/tests/data/collated/sample_data/sample1/24dee6fe-9b84-45bb-8145-de7b092533a1.fasta b/q2_moshpit/partition/tests/data/collated/sample_data/sample1/24dee6fe-9b84-45bb-8145-de7b092533a1.fasta deleted file mode 100644 index c072c82b..00000000 --- a/q2_moshpit/partition/tests/data/collated/sample_data/sample1/24dee6fe-9b84-45bb-8145-de7b092533a1.fasta +++ /dev/null @@ -1,4 +0,0 @@ ->NZ_00000000.1_contig1 -ATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATG ->NZ_00000000.1_contig2 -TTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGA diff --git a/q2_moshpit/partition/tests/data/collated/sample_data/sample1/fb0bc871-04f6-486b-a10e-8e0cb66f8de3.fasta b/q2_moshpit/partition/tests/data/collated/sample_data/sample1/fb0bc871-04f6-486b-a10e-8e0cb66f8de3.fasta deleted file mode 100644 index e5910508..00000000 --- a/q2_moshpit/partition/tests/data/collated/sample_data/sample1/fb0bc871-04f6-486b-a10e-8e0cb66f8de3.fasta +++ /dev/null @@ -1,4 +0,0 @@ ->NZ_CP018863.1_contig1 -GCCTCCTCCCAGTTCGTCTCAGCGCTGCTGCTGGTCGGCGCCAAATTCCGTAACGGGCTGCACCTCGAACATTCCGGCCAGAGCGTCCCCAGCCTGGACCACGTTGCCATGACCGTGGCGGTACTGCGCAGCGTCGGGGTGGAGGTAGACGATTCCCGGCAGAACCACTGGTGGTCCGGCCCGGACCGGTCAAGGCCTTCGACGTCACCGTCGAACAGGACCTTTCCAATGCCGGCCCCTTCCTCGCGGCAGCCCTGGCCACGAAGGGAACGGTTCGGATCCCAGGCTGGCCGGAGAAAACCACGCAGGTAGGTGACAAATGGCGCAGCATCCTGGCGCAACTCGGCGCCACTGTCAGCTACGAGAACGGCACCCTCACCGTAACCGGCGGGGCAGAGATCACCGGGGCGCAGCTCGCCGACACCAGCGAACTTGCCCCCACCACGGCGGCGCTCTGTGCCCTGGCCGGCAGCGAATCCAGGCTCACCGGAATTGCCCACTTGCGGGGACACGAAACAGACCGGCTGGCGGCTCTGGTCGCGGAAATCAATGCCTTGGGTGGCGACGCCGAAGAAACCGAAGACGGGTTGATCATCCGTCCGAGGCCACTGCATGGCGGGGTCTTCCATTCATATGAGGACCACAGGATGGCCACCGCCGGAGCCATTATCGGGCTGGCAGTCGAGGGCGTGGAAGTCGAAGACATCGGCACCACGGCCAAGACCATGCCCGAGTTCCCGCGGCTATGGCAGGACCTGTTCGAGACTTCCGTCCGCCAGTCCGAGGCGGGAGCGCTCTAAGGTGGTGCGCGGCAACCGTACGTGGGACGAGTCCGATGTCCGCATCCGTCCCAACAAGCGCGGCTCGCGTCCGCGTACCAAGGAACGGCCTGCCCACGAAGACGCCGTCATCGGGCGGATCATCACCGTGGACCGCGGCCGCTACACCGCGGTCGTCGATGAAGACACTGCCCGGGAACGGGTGGTTGTCGCCGCCCGTG ->NZ_CP018863.1_contig2 -CCCGGGAGCTTCGTCGCAGTCCGGTGGTGGCCGGCGACTTCGTAGCGCTCGTCGGTGACATTACCGGTGAGCCGGATACGTTGGCCCGGCTGGTCCGGATTGAGGAACGCCGGACGCTGTTGCGCCGCAGCGCCGACGATACAGATCCCGTGGAGCGGGTAGTCGTCGCCAATGCAGACCAGCTGGTCATCGTCGTGGCCGCCGCAAACCCCGAGCCGCGCACCGGTTTCATCGACCGCGCCTTGGTAGCGGCGTACGACGCCGGTATCAGCCCGCTGCTGTGCGTCACCAAAGCGGACGTCAAGGATCCCGAAGAACTGCTCTCCAACTACCGGCACCTGGACCTGCCCGTGATCGTCAGCCGGACGGCCGGCACGGAGGGCTCCGGGGTGGATGCACGGTCCGCCGACGGGCTGTCTGCCCGTCTCGACCGTGACGCCGTAGCGGCGCTCCGTGGCTATCTGGATGGGATGGTCAGCGTCATGCTCGGCCATTCGGGCGTGGGCAAGTCCACCATGGTCAATGCCCTCACGGGGGCGGAGCGCGCCACGGGGGGAGTCAACGCGGTGACCGGGCGGGGCCGGCATACCTCCTCCTCGGCGCTGGCCCTGAAGCTGGCCGACGCTCCGGCTGGCAGCTGGATCATCGACACGCCCGGCATCCGTTCTTTTGGACTGGCCCACGTGGACCCGGACCGGATCATTTCCGCTTTTCCCGATTTGGAGCCCGGGACGGCGGACTGCGAGCGGGGCTGCAAGCACGACGACCATGCCGTCAACTGCGGCGTGGACGCCTGGGTGGCCTCCGGGCAGGCCGGCGAATCCGGCCCGGCACGGCTGGCCTCGCTGCGCCGTTTGCTGGGAACGGAAGAACGCGCCCAGGCGAAGGAACTCGGGTTCCAGTAGCACCGCCGTCGTCGGTCAGGGACTTCACATCCCGCATCCGGCCGCCAAATAAGGATAAGTTGAAGCCTATGACCCGTGACGTTCAAAGCTATAAC diff --git a/q2_moshpit/partition/tests/data/collated/sample_data/sample2/d65a71fa-4279-4588-b937-0747ed5d604d.fasta b/q2_moshpit/partition/tests/data/collated/sample_data/sample2/d65a71fa-4279-4588-b937-0747ed5d604d.fasta deleted file mode 100644 index b2330298..00000000 --- a/q2_moshpit/partition/tests/data/collated/sample_data/sample2/d65a71fa-4279-4588-b937-0747ed5d604d.fasta +++ /dev/null @@ -1,6 +0,0 @@ ->NZ_CP018863.1_contig1 -GCCTCCTCCCAGTTCGTCTCAGCGCTGCTGCTGGTCGGCGCCAAATTCCGTAACGGGCTGCACCTCGAACATTCCGGCCAGAGCGTCCCCAGCCTGGACCACGTTGCCATGACCGTGGCGGTACTGCGCAGCGTCGGGGTGGAGGTAGACGATTCCCGGCAGAACCACTGGTGGTCCGGCCCGGACCGGTCAAGGCCTTCGACGTCACCGTCGAACAGGACCTTTCCAATGCCGGCCCCTTCCTCGCGGCAGCCCTGGCCACGAAGGGAACGGTTCGGATCCCAGGCTGGCCGGAGAAAACCACGCAGGTAGGTGACAAATGGCGCAGCATCCTGGCGCAACTCGGCGCCACTGTCAGCTACGAGAACGGCACCCTCACCGTAACCGGCGGGGCAGAGATCACCGGGGCGCAGCTCGCCGACACCAGCGAACTTGCCCCCACCACGGCGGCGCTCTGTGCCCTGGCCGGCAGCGAATCCAGGCTCACCGGAATTGCCCACTTGCGGGGACACGAAACAGACCGGCTGGCGGCTCTGGTCGCGGAAATCAATGCCTTGGGTGGCGACGCCGAAGAAACCGAAGACGGGTTGATCATCCGTCCGAGGCCACTGCATGGCGGGGTCTTCCATTCATATGAGGACCACAGGATGGCCACCGCCGGAGCCATTATCGGGCTGGCAGTCGAGGGCGTGGAAGTCGAAGACATCGGCACCACGGCCAAGACCATGCCCGAGTTCCCGCGGCTATGGCAGGACCTGTTCGAGACTTCCGTCCGCCAGTCCGAGGCGGGAGCGCTCTAAGGTGGTGCGCGGCAACCGTACGTGGGACGAGTCCGATGTCCGCATCCGTCCCAACAAGCGCGGCTCGCGTCCGCGTACCAAGGAACGGCCTGCCCACGAAGACGCCGTCATCGGGCGGATCATCACCGTGGACCGCGGCCGCTACACCGCGGTCGTCGATGAAGACACTGCCCGGGAACGGGTGGTTGTCGCCGCCCGTG ->NZ_CP018863.1_contig2 -CCCGGGAGCTTCGTCGCAGTCCGGTGGTGGCCGGCGACTTCGTAGCGCTCGTCGGTGACATTACCGGTGAGCCGGATACGTTGGCCCGGCTGGTCCGGATTGAGGAACGCCGGACGCTGTTGCGCCGCAGCGCCGACGATACAGATCCCGTGGAGCGGGTAGTCGTCGCCAATGCAGACCAGCTGGTCATCGTCGTGGCCGCCGCAAACCCCGAGCCGCGCACCGGTTTCATCGACCGCGCCTTGGTAGCGGCGTACGACGCCGGTATCAGCCCGCTGCTGTGCGTCACCAAAGCGGACGTCAAGGATCCCGAAGAACTGCTCTCCAACTACCGGCACCTGGACCTGCCCGTGATCGTCAGCCGGACGGCCGGCACGGAGGGCTCCGGGGTGGATGCACGGTCCGCCGACGGGCTGTCTGCCCGTCTCGACCGTGACGCCGTAGCGGCGCTCCGTGGCTATCTGGATGGGATGGTCAGCGTCATGCTCGGCCATTCGGGCGTGGGCAAGTCCACCATGGTCAATGCCCTCACGGGGGCGGAGCGCGCCACGGGGGGAGTCAACGCGGTGACCGGGCGGGGCCGGCATACCTCCTCCTCGGCGCTGGCCCTGAAGCTGGCCGACGCTCCGGCTGGCAGCTGGATCATCGACACGCCCGGCATCCGTTCTTTTGGACTGGCCCACGTGGACCCGGACCGGATCATTTCCGCTTTTCCCGATTTGGAGCCCGGGACGGCGGACTGCGAGCGGGGCTGCAAGCACGACGACCATGCCGTCAACTGCGGCGTGGACGCCTGGGTGGCCTCCGGGCAGGCCGGCGAATCCGGCCCGGCACGGCTGGCCTCGCTGCGCCGTTTGCTGGGAACGGAAGAACGCGCCCAGGCGAAGGAACTCGGGTTCCAGTAGCACCGCCGTCGTCGGTCAGGGACTTCACATCCCGCATCCGGCCGCCAAATAAGGATAAGTTGAAGCCTATGACCCGTGACGTTCAAAGCTATAAC ->NZ_CP018863.1_contig3 -GACGATCTGCGCCTGGCCCATGTGATGGCCGATTCCGTGGATTCGCAGACCATGGCCCGCTTCAAGGCGCTGGACCTGAAAATCGAGACCAAGCCGGATCTCACCCCTGTCACGGATGCGGACCGCGCCGCTGAAGAGGCCATCCGCGGCCAACTCTCCCGGGCCCGGCCGCGCGACGCGGTCCTCGGCGAGGAATACGGCAGCAGCGGCCACGGCTCCCGCCGCTGGATCATCGATCCCATCGACGGCACGAAGAACTTCGTCCGCGGGGTGCCGGTCTGGGCCACCTTGATCGCGCTGGTAGACGAAGACCGTCCCGTGGTCGGCCTGGTCAGCGCGCCGGCTCTGGGCAAGCGCTGGTGGGCCGCGACCGGAACCGGTGCCTACATGGGACGTTCGCTGTCCGCGGCCACCCGGCTCCGGGTATCCGATGTCAACCGGCTCGAGGACGCGTCCCTCTCCTATTCCAGCCTCACCGGCTGGCAGGAACGCGGCAACTTCCCGGAGTTCCTCGGCCTCACCGAATCCGTCTGGCGCACCCGTGCCTACGGGGACTTCTGGTCCTACTGCATGGTGGCCGAGGGCGCCGTCGACATTGCCTGCGAACCCGAACTCAACCTCTATGACATGGCGGCCCTCGTGCCGATCGTGACCGAGGCCGGCGGACGGTTCAGTTCGCTCGAGGGCGAGGACGGACCCTTCGGCGGCAACGCGTTGGCCACGAACGGCACGCTGCACGACGAGGTCCTCTACCGGCTCAATCCGCAGTTGCGCGGCCAGCGTCCGGCCGCACACCCGGAGGACGGGTCCCTGCCGGAAACCGCTCCGGAGGCCTCCATGGAGGCGGACGGCCTGCGCTGACGCTGTCTTTTGTGACGAATTACGACGGCGGCCGTCCCCATTCCGGGGATGGCCGCCTTTTCGTTCCCGTAACAAAGATGCGGCCCCTCCGGCCGGACAATAATCTCGATGGCAGGTCACGAGTGCCAGCGCTAAACCC diff --git a/q2_moshpit/partition/tests/data/partitioned/feature_data/mag1/24dee6fe-9b84-45bb-8145-de7b092533a1.fasta b/q2_moshpit/partition/tests/data/partitioned/feature_data/mag1/24dee6fe-9b84-45bb-8145-de7b092533a1.fasta deleted file mode 100644 index c072c82b..00000000 --- a/q2_moshpit/partition/tests/data/partitioned/feature_data/mag1/24dee6fe-9b84-45bb-8145-de7b092533a1.fasta +++ /dev/null @@ -1,4 +0,0 @@ ->NZ_00000000.1_contig1 -ATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATG ->NZ_00000000.1_contig2 -TTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGA diff --git a/q2_moshpit/partition/tests/data/partitioned/feature_data/mag2/fb0bc871-04f6-486b-a10e-8e0cb66f8de3.fasta b/q2_moshpit/partition/tests/data/partitioned/feature_data/mag2/fb0bc871-04f6-486b-a10e-8e0cb66f8de3.fasta deleted file mode 100644 index e5910508..00000000 --- a/q2_moshpit/partition/tests/data/partitioned/feature_data/mag2/fb0bc871-04f6-486b-a10e-8e0cb66f8de3.fasta +++ /dev/null @@ -1,4 +0,0 @@ ->NZ_CP018863.1_contig1 -GCCTCCTCCCAGTTCGTCTCAGCGCTGCTGCTGGTCGGCGCCAAATTCCGTAACGGGCTGCACCTCGAACATTCCGGCCAGAGCGTCCCCAGCCTGGACCACGTTGCCATGACCGTGGCGGTACTGCGCAGCGTCGGGGTGGAGGTAGACGATTCCCGGCAGAACCACTGGTGGTCCGGCCCGGACCGGTCAAGGCCTTCGACGTCACCGTCGAACAGGACCTTTCCAATGCCGGCCCCTTCCTCGCGGCAGCCCTGGCCACGAAGGGAACGGTTCGGATCCCAGGCTGGCCGGAGAAAACCACGCAGGTAGGTGACAAATGGCGCAGCATCCTGGCGCAACTCGGCGCCACTGTCAGCTACGAGAACGGCACCCTCACCGTAACCGGCGGGGCAGAGATCACCGGGGCGCAGCTCGCCGACACCAGCGAACTTGCCCCCACCACGGCGGCGCTCTGTGCCCTGGCCGGCAGCGAATCCAGGCTCACCGGAATTGCCCACTTGCGGGGACACGAAACAGACCGGCTGGCGGCTCTGGTCGCGGAAATCAATGCCTTGGGTGGCGACGCCGAAGAAACCGAAGACGGGTTGATCATCCGTCCGAGGCCACTGCATGGCGGGGTCTTCCATTCATATGAGGACCACAGGATGGCCACCGCCGGAGCCATTATCGGGCTGGCAGTCGAGGGCGTGGAAGTCGAAGACATCGGCACCACGGCCAAGACCATGCCCGAGTTCCCGCGGCTATGGCAGGACCTGTTCGAGACTTCCGTCCGCCAGTCCGAGGCGGGAGCGCTCTAAGGTGGTGCGCGGCAACCGTACGTGGGACGAGTCCGATGTCCGCATCCGTCCCAACAAGCGCGGCTCGCGTCCGCGTACCAAGGAACGGCCTGCCCACGAAGACGCCGTCATCGGGCGGATCATCACCGTGGACCGCGGCCGCTACACCGCGGTCGTCGATGAAGACACTGCCCGGGAACGGGTGGTTGTCGCCGCCCGTG ->NZ_CP018863.1_contig2 -CCCGGGAGCTTCGTCGCAGTCCGGTGGTGGCCGGCGACTTCGTAGCGCTCGTCGGTGACATTACCGGTGAGCCGGATACGTTGGCCCGGCTGGTCCGGATTGAGGAACGCCGGACGCTGTTGCGCCGCAGCGCCGACGATACAGATCCCGTGGAGCGGGTAGTCGTCGCCAATGCAGACCAGCTGGTCATCGTCGTGGCCGCCGCAAACCCCGAGCCGCGCACCGGTTTCATCGACCGCGCCTTGGTAGCGGCGTACGACGCCGGTATCAGCCCGCTGCTGTGCGTCACCAAAGCGGACGTCAAGGATCCCGAAGAACTGCTCTCCAACTACCGGCACCTGGACCTGCCCGTGATCGTCAGCCGGACGGCCGGCACGGAGGGCTCCGGGGTGGATGCACGGTCCGCCGACGGGCTGTCTGCCCGTCTCGACCGTGACGCCGTAGCGGCGCTCCGTGGCTATCTGGATGGGATGGTCAGCGTCATGCTCGGCCATTCGGGCGTGGGCAAGTCCACCATGGTCAATGCCCTCACGGGGGCGGAGCGCGCCACGGGGGGAGTCAACGCGGTGACCGGGCGGGGCCGGCATACCTCCTCCTCGGCGCTGGCCCTGAAGCTGGCCGACGCTCCGGCTGGCAGCTGGATCATCGACACGCCCGGCATCCGTTCTTTTGGACTGGCCCACGTGGACCCGGACCGGATCATTTCCGCTTTTCCCGATTTGGAGCCCGGGACGGCGGACTGCGAGCGGGGCTGCAAGCACGACGACCATGCCGTCAACTGCGGCGTGGACGCCTGGGTGGCCTCCGGGCAGGCCGGCGAATCCGGCCCGGCACGGCTGGCCTCGCTGCGCCGTTTGCTGGGAACGGAAGAACGCGCCCAGGCGAAGGAACTCGGGTTCCAGTAGCACCGCCGTCGTCGGTCAGGGACTTCACATCCCGCATCCGGCCGCCAAATAAGGATAAGTTGAAGCCTATGACCCGTGACGTTCAAAGCTATAAC diff --git a/q2_moshpit/partition/tests/data/partitioned/sample_data/mag1/MANIFEST b/q2_moshpit/partition/tests/data/partitioned/sample_data/mag1/MANIFEST deleted file mode 100644 index 9f6ba795..00000000 --- a/q2_moshpit/partition/tests/data/partitioned/sample_data/mag1/MANIFEST +++ /dev/null @@ -1,7 +0,0 @@ -sample-id,mag-id,filename -sample1,ca7012fc-ba65-40c3-84f5-05aa478a7585,sample1/ca7012fc-ba65-40c3-84f5-05aa478a7585.fasta -sample1,fb0bc871-04f6-486b-a10e-8e0cb66f8de3,sample1/fb0bc871-04f6-486b-a10e-8e0cb66f8de3.fasta -sample1,24dee6fe-9b84-45bb-8145-de7b092533a1,sample1/24dee6fe-9b84-45bb-8145-de7b092533a1.fasta -sample2,db03f8b6-28e1-48c5-a47c-9c65f38f7357,sample2/db03f8b6-28e1-48c5-a47c-9c65f38f7357.fasta -sample2,d65a71fa-4279-4588-b937-0747ed5d604d,sample2/d65a71fa-4279-4588-b937-0747ed5d604d.fasta -sample2,fa4d7420-d0a4-455a-b4d7-4fa66e54c9bf,sample2/fa4d7420-d0a4-455a-b4d7-4fa66e54c9bf.fasta diff --git a/q2_moshpit/partition/tests/data/partitioned/sample_data/mag1/sample1/24dee6fe-9b84-45bb-8145-de7b092533a1.fasta b/q2_moshpit/partition/tests/data/partitioned/sample_data/mag1/sample1/24dee6fe-9b84-45bb-8145-de7b092533a1.fasta deleted file mode 100644 index c072c82b..00000000 --- a/q2_moshpit/partition/tests/data/partitioned/sample_data/mag1/sample1/24dee6fe-9b84-45bb-8145-de7b092533a1.fasta +++ /dev/null @@ -1,4 +0,0 @@ ->NZ_00000000.1_contig1 -ATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATGTTTCCAGATGCAATGCGTGGGCACTGATG ->NZ_00000000.1_contig2 -TTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGAAAACCATGCAGTGTTGACGTCAGTGA diff --git a/q2_moshpit/partition/tests/data/partitioned/sample_data/mag1/sample1/fb0bc871-04f6-486b-a10e-8e0cb66f8de3.fasta b/q2_moshpit/partition/tests/data/partitioned/sample_data/mag1/sample1/fb0bc871-04f6-486b-a10e-8e0cb66f8de3.fasta deleted file mode 100644 index e5910508..00000000 --- a/q2_moshpit/partition/tests/data/partitioned/sample_data/mag1/sample1/fb0bc871-04f6-486b-a10e-8e0cb66f8de3.fasta +++ /dev/null @@ -1,4 +0,0 @@ ->NZ_CP018863.1_contig1 -GCCTCCTCCCAGTTCGTCTCAGCGCTGCTGCTGGTCGGCGCCAAATTCCGTAACGGGCTGCACCTCGAACATTCCGGCCAGAGCGTCCCCAGCCTGGACCACGTTGCCATGACCGTGGCGGTACTGCGCAGCGTCGGGGTGGAGGTAGACGATTCCCGGCAGAACCACTGGTGGTCCGGCCCGGACCGGTCAAGGCCTTCGACGTCACCGTCGAACAGGACCTTTCCAATGCCGGCCCCTTCCTCGCGGCAGCCCTGGCCACGAAGGGAACGGTTCGGATCCCAGGCTGGCCGGAGAAAACCACGCAGGTAGGTGACAAATGGCGCAGCATCCTGGCGCAACTCGGCGCCACTGTCAGCTACGAGAACGGCACCCTCACCGTAACCGGCGGGGCAGAGATCACCGGGGCGCAGCTCGCCGACACCAGCGAACTTGCCCCCACCACGGCGGCGCTCTGTGCCCTGGCCGGCAGCGAATCCAGGCTCACCGGAATTGCCCACTTGCGGGGACACGAAACAGACCGGCTGGCGGCTCTGGTCGCGGAAATCAATGCCTTGGGTGGCGACGCCGAAGAAACCGAAGACGGGTTGATCATCCGTCCGAGGCCACTGCATGGCGGGGTCTTCCATTCATATGAGGACCACAGGATGGCCACCGCCGGAGCCATTATCGGGCTGGCAGTCGAGGGCGTGGAAGTCGAAGACATCGGCACCACGGCCAAGACCATGCCCGAGTTCCCGCGGCTATGGCAGGACCTGTTCGAGACTTCCGTCCGCCAGTCCGAGGCGGGAGCGCTCTAAGGTGGTGCGCGGCAACCGTACGTGGGACGAGTCCGATGTCCGCATCCGTCCCAACAAGCGCGGCTCGCGTCCGCGTACCAAGGAACGGCCTGCCCACGAAGACGCCGTCATCGGGCGGATCATCACCGTGGACCGCGGCCGCTACACCGCGGTCGTCGATGAAGACACTGCCCGGGAACGGGTGGTTGTCGCCGCCCGTG ->NZ_CP018863.1_contig2 -CCCGGGAGCTTCGTCGCAGTCCGGTGGTGGCCGGCGACTTCGTAGCGCTCGTCGGTGACATTACCGGTGAGCCGGATACGTTGGCCCGGCTGGTCCGGATTGAGGAACGCCGGACGCTGTTGCGCCGCAGCGCCGACGATACAGATCCCGTGGAGCGGGTAGTCGTCGCCAATGCAGACCAGCTGGTCATCGTCGTGGCCGCCGCAAACCCCGAGCCGCGCACCGGTTTCATCGACCGCGCCTTGGTAGCGGCGTACGACGCCGGTATCAGCCCGCTGCTGTGCGTCACCAAAGCGGACGTCAAGGATCCCGAAGAACTGCTCTCCAACTACCGGCACCTGGACCTGCCCGTGATCGTCAGCCGGACGGCCGGCACGGAGGGCTCCGGGGTGGATGCACGGTCCGCCGACGGGCTGTCTGCCCGTCTCGACCGTGACGCCGTAGCGGCGCTCCGTGGCTATCTGGATGGGATGGTCAGCGTCATGCTCGGCCATTCGGGCGTGGGCAAGTCCACCATGGTCAATGCCCTCACGGGGGCGGAGCGCGCCACGGGGGGAGTCAACGCGGTGACCGGGCGGGGCCGGCATACCTCCTCCTCGGCGCTGGCCCTGAAGCTGGCCGACGCTCCGGCTGGCAGCTGGATCATCGACACGCCCGGCATCCGTTCTTTTGGACTGGCCCACGTGGACCCGGACCGGATCATTTCCGCTTTTCCCGATTTGGAGCCCGGGACGGCGGACTGCGAGCGGGGCTGCAAGCACGACGACCATGCCGTCAACTGCGGCGTGGACGCCTGGGTGGCCTCCGGGCAGGCCGGCGAATCCGGCCCGGCACGGCTGGCCTCGCTGCGCCGTTTGCTGGGAACGGAAGAACGCGCCCAGGCGAAGGAACTCGGGTTCCAGTAGCACCGCCGTCGTCGGTCAGGGACTTCACATCCCGCATCCGGCCGCCAAATAAGGATAAGTTGAAGCCTATGACCCGTGACGTTCAAAGCTATAAC diff --git a/q2_moshpit/partition/tests/data/partitioned/sample_data/mag2/MANIFEST b/q2_moshpit/partition/tests/data/partitioned/sample_data/mag2/MANIFEST deleted file mode 100644 index 9f6ba795..00000000 --- a/q2_moshpit/partition/tests/data/partitioned/sample_data/mag2/MANIFEST +++ /dev/null @@ -1,7 +0,0 @@ -sample-id,mag-id,filename -sample1,ca7012fc-ba65-40c3-84f5-05aa478a7585,sample1/ca7012fc-ba65-40c3-84f5-05aa478a7585.fasta -sample1,fb0bc871-04f6-486b-a10e-8e0cb66f8de3,sample1/fb0bc871-04f6-486b-a10e-8e0cb66f8de3.fasta -sample1,24dee6fe-9b84-45bb-8145-de7b092533a1,sample1/24dee6fe-9b84-45bb-8145-de7b092533a1.fasta -sample2,db03f8b6-28e1-48c5-a47c-9c65f38f7357,sample2/db03f8b6-28e1-48c5-a47c-9c65f38f7357.fasta -sample2,d65a71fa-4279-4588-b937-0747ed5d604d,sample2/d65a71fa-4279-4588-b937-0747ed5d604d.fasta -sample2,fa4d7420-d0a4-455a-b4d7-4fa66e54c9bf,sample2/fa4d7420-d0a4-455a-b4d7-4fa66e54c9bf.fasta diff --git a/q2_moshpit/partition/tests/data/partitioned/sample_data/mag2/sample2/d65a71fa-4279-4588-b937-0747ed5d604d.fasta b/q2_moshpit/partition/tests/data/partitioned/sample_data/mag2/sample2/d65a71fa-4279-4588-b937-0747ed5d604d.fasta deleted file mode 100644 index b2330298..00000000 --- a/q2_moshpit/partition/tests/data/partitioned/sample_data/mag2/sample2/d65a71fa-4279-4588-b937-0747ed5d604d.fasta +++ /dev/null @@ -1,6 +0,0 @@ ->NZ_CP018863.1_contig1 -GCCTCCTCCCAGTTCGTCTCAGCGCTGCTGCTGGTCGGCGCCAAATTCCGTAACGGGCTGCACCTCGAACATTCCGGCCAGAGCGTCCCCAGCCTGGACCACGTTGCCATGACCGTGGCGGTACTGCGCAGCGTCGGGGTGGAGGTAGACGATTCCCGGCAGAACCACTGGTGGTCCGGCCCGGACCGGTCAAGGCCTTCGACGTCACCGTCGAACAGGACCTTTCCAATGCCGGCCCCTTCCTCGCGGCAGCCCTGGCCACGAAGGGAACGGTTCGGATCCCAGGCTGGCCGGAGAAAACCACGCAGGTAGGTGACAAATGGCGCAGCATCCTGGCGCAACTCGGCGCCACTGTCAGCTACGAGAACGGCACCCTCACCGTAACCGGCGGGGCAGAGATCACCGGGGCGCAGCTCGCCGACACCAGCGAACTTGCCCCCACCACGGCGGCGCTCTGTGCCCTGGCCGGCAGCGAATCCAGGCTCACCGGAATTGCCCACTTGCGGGGACACGAAACAGACCGGCTGGCGGCTCTGGTCGCGGAAATCAATGCCTTGGGTGGCGACGCCGAAGAAACCGAAGACGGGTTGATCATCCGTCCGAGGCCACTGCATGGCGGGGTCTTCCATTCATATGAGGACCACAGGATGGCCACCGCCGGAGCCATTATCGGGCTGGCAGTCGAGGGCGTGGAAGTCGAAGACATCGGCACCACGGCCAAGACCATGCCCGAGTTCCCGCGGCTATGGCAGGACCTGTTCGAGACTTCCGTCCGCCAGTCCGAGGCGGGAGCGCTCTAAGGTGGTGCGCGGCAACCGTACGTGGGACGAGTCCGATGTCCGCATCCGTCCCAACAAGCGCGGCTCGCGTCCGCGTACCAAGGAACGGCCTGCCCACGAAGACGCCGTCATCGGGCGGATCATCACCGTGGACCGCGGCCGCTACACCGCGGTCGTCGATGAAGACACTGCCCGGGAACGGGTGGTTGTCGCCGCCCGTG ->NZ_CP018863.1_contig2 -CCCGGGAGCTTCGTCGCAGTCCGGTGGTGGCCGGCGACTTCGTAGCGCTCGTCGGTGACATTACCGGTGAGCCGGATACGTTGGCCCGGCTGGTCCGGATTGAGGAACGCCGGACGCTGTTGCGCCGCAGCGCCGACGATACAGATCCCGTGGAGCGGGTAGTCGTCGCCAATGCAGACCAGCTGGTCATCGTCGTGGCCGCCGCAAACCCCGAGCCGCGCACCGGTTTCATCGACCGCGCCTTGGTAGCGGCGTACGACGCCGGTATCAGCCCGCTGCTGTGCGTCACCAAAGCGGACGTCAAGGATCCCGAAGAACTGCTCTCCAACTACCGGCACCTGGACCTGCCCGTGATCGTCAGCCGGACGGCCGGCACGGAGGGCTCCGGGGTGGATGCACGGTCCGCCGACGGGCTGTCTGCCCGTCTCGACCGTGACGCCGTAGCGGCGCTCCGTGGCTATCTGGATGGGATGGTCAGCGTCATGCTCGGCCATTCGGGCGTGGGCAAGTCCACCATGGTCAATGCCCTCACGGGGGCGGAGCGCGCCACGGGGGGAGTCAACGCGGTGACCGGGCGGGGCCGGCATACCTCCTCCTCGGCGCTGGCCCTGAAGCTGGCCGACGCTCCGGCTGGCAGCTGGATCATCGACACGCCCGGCATCCGTTCTTTTGGACTGGCCCACGTGGACCCGGACCGGATCATTTCCGCTTTTCCCGATTTGGAGCCCGGGACGGCGGACTGCGAGCGGGGCTGCAAGCACGACGACCATGCCGTCAACTGCGGCGTGGACGCCTGGGTGGCCTCCGGGCAGGCCGGCGAATCCGGCCCGGCACGGCTGGCCTCGCTGCGCCGTTTGCTGGGAACGGAAGAACGCGCCCAGGCGAAGGAACTCGGGTTCCAGTAGCACCGCCGTCGTCGGTCAGGGACTTCACATCCCGCATCCGGCCGCCAAATAAGGATAAGTTGAAGCCTATGACCCGTGACGTTCAAAGCTATAAC ->NZ_CP018863.1_contig3 -GACGATCTGCGCCTGGCCCATGTGATGGCCGATTCCGTGGATTCGCAGACCATGGCCCGCTTCAAGGCGCTGGACCTGAAAATCGAGACCAAGCCGGATCTCACCCCTGTCACGGATGCGGACCGCGCCGCTGAAGAGGCCATCCGCGGCCAACTCTCCCGGGCCCGGCCGCGCGACGCGGTCCTCGGCGAGGAATACGGCAGCAGCGGCCACGGCTCCCGCCGCTGGATCATCGATCCCATCGACGGCACGAAGAACTTCGTCCGCGGGGTGCCGGTCTGGGCCACCTTGATCGCGCTGGTAGACGAAGACCGTCCCGTGGTCGGCCTGGTCAGCGCGCCGGCTCTGGGCAAGCGCTGGTGGGCCGCGACCGGAACCGGTGCCTACATGGGACGTTCGCTGTCCGCGGCCACCCGGCTCCGGGTATCCGATGTCAACCGGCTCGAGGACGCGTCCCTCTCCTATTCCAGCCTCACCGGCTGGCAGGAACGCGGCAACTTCCCGGAGTTCCTCGGCCTCACCGAATCCGTCTGGCGCACCCGTGCCTACGGGGACTTCTGGTCCTACTGCATGGTGGCCGAGGGCGCCGTCGACATTGCCTGCGAACCCGAACTCAACCTCTATGACATGGCGGCCCTCGTGCCGATCGTGACCGAGGCCGGCGGACGGTTCAGTTCGCTCGAGGGCGAGGACGGACCCTTCGGCGGCAACGCGTTGGCCACGAACGGCACGCTGCACGACGAGGTCCTCTACCGGCTCAATCCGCAGTTGCGCGGCCAGCGTCCGGCCGCACACCCGGAGGACGGGTCCCTGCCGGAAACCGCTCCGGAGGCCTCCATGGAGGCGGACGGCCTGCGCTGACGCTGTCTTTTGTGACGAATTACGACGGCGGCCGTCCCCATTCCGGGGATGGCCGCCTTTTCGTTCCCGTAACAAAGATGCGGCCCCTCCGGCCGGACAATAATCTCGATGGCAGGTCACGAGTGCCAGCGCTAAACCC diff --git a/q2_moshpit/partition/tests/test_annotations.py b/q2_moshpit/partition/tests/test_annotations.py deleted file mode 100644 index 01e253af..00000000 --- a/q2_moshpit/partition/tests/test_annotations.py +++ /dev/null @@ -1,33 +0,0 @@ -# ---------------------------------------------------------------------------- -# Copyright (c) 2022-2023, QIIME 2 development team. -# -# Distributed under the terms of the Modified BSD License. -# -# The full license is in the file LICENSE, distributed with this software. -# ---------------------------------------------------------------------------- -import filecmp -from qiime2.plugin.testing import TestPluginBase -from q2_types.genome_data import OrthologAnnotationDirFmt -from ..annotations import collate_annotations - - -class TestCollateAnnotations(TestPluginBase): - package = 'q2_moshpit.partition.tests' - - def test_collate_annotations(self): - p = self.get_data_path("annotations") - annotations = [ - OrthologAnnotationDirFmt(f"{p}/{letter}", mode="r") - for letter in ["a", "b", "c"] - ] - collated_annotations = collate_annotations(annotations) - - # assert that all files are there - compare = filecmp.dircmp( - collated_annotations.path, - self.get_data_path("annotations/collated") - ) - self.assertListEqual( - compare.common, - [f"{letter}.annotations" for letter in ["a", "b", "c"]] - ) diff --git a/q2_moshpit/partition/tests/test_mags.py b/q2_moshpit/partition/tests/test_mags.py deleted file mode 100644 index 259e3e0f..00000000 --- a/q2_moshpit/partition/tests/test_mags.py +++ /dev/null @@ -1,154 +0,0 @@ -# ---------------------------------------------------------------------------- -# Copyright (c) 2023, QIIME 2 development team. -# -# Distributed under the terms of the Modified BSD License. -# -# The full license is in the file LICENSE, distributed with this software. -# ---------------------------------------------------------------------------- -import filecmp -from unittest.mock import patch -from q2_moshpit.partition.mags import ( - partition_sample_data_mags, partition_feature_data_mags, - collate_feature_data_mags, collate_sample_data_mags -) -from qiime2.plugin.testing import TestPluginBase -from q2_types.per_sample_sequences import ( - MultiMAGSequencesDirFmt, -) -from q2_types.feature_data_mag import ( - MAGSequencesDirFmt -) - - -class TestHelpers(TestPluginBase): - package = 'q2_moshpit.partition.tests' - - @patch('q2_moshpit.partition.utils._validate_mag_ids') - @patch('q2_moshpit.partition.utils._validate_num_partitions') - def test_partition_sample_data_mags( - self, - mock_validate_num_partitions, - mock_validate_mag_ids - ): - # Partition mags - p = self.get_data_path("collated/sample_data") - mags = MultiMAGSequencesDirFmt(path=p, mode="r") - mock_validate_num_partitions.return_value = 2 - partitioned_mags = partition_sample_data_mags(mags, 2) - - # Expected mag ids for every sample - mag_ids_sample_1 = [ - "24dee6fe-9b84-45bb-8145-de7b092533a1.fasta", - "fb0bc871-04f6-486b-a10e-8e0cb66f8de3.fasta" - ] - mag_ids_sample_2 = [ - "d65a71fa-4279-4588-b937-0747ed5d604d.fasta", - ] - - # Compare dirs - exp_partitions = [ - ('sample1', mag_ids_sample_1), ('sample2', mag_ids_sample_2) - ] - for _id, mag_ids in exp_partitions: - dircmp = filecmp.dircmp( - partitioned_mags[_id].path, - mags.path - ) - self.assertListEqual( - ["MANIFEST", _id], dircmp.common - ) - dircmp = filecmp.dircmp( - f"{partitioned_mags[_id].path}/{_id}", - f"{mags.path}/{_id}" - ) - self.assertListEqual( - [ - *mag_ids, - ], - dircmp.common - ) - - @patch('q2_moshpit.partition.utils._validate_mag_ids') - @patch('q2_moshpit.partition.utils._validate_num_partitions') - def test_partition_feature_data_mags( - self, - mock_validate_num_partitions, - mock_validate_mag_ids - ): - # Partition Feature Data - p = self.get_data_path("collated/feature_data") - mags = MAGSequencesDirFmt(path=p, mode="r") - mock_validate_num_partitions.return_value = 2 - partitioned_mags = partition_feature_data_mags(mags) - - # Expected mag ids - mag_ids = [ - "24dee6fe-9b84-45bb-8145-de7b092533a1", - "fb0bc871-04f6-486b-a10e-8e0cb66f8de3" - ] - - # compare partitions - for i in [0, 1]: - dircmp = filecmp.dircmp( - partitioned_mags[mag_ids[i]].path, mags.path - ) - self.assertListEqual([f"{mag_ids[i]}.fasta"], dircmp.common) - - def test_collate_sample_data_mags(self): - p1 = self.get_data_path("partitioned/sample_data/mag1") - p2 = self.get_data_path("partitioned/sample_data/mag2") - mags = [ - MultiMAGSequencesDirFmt(p1, mode="r"), - MultiMAGSequencesDirFmt(p2, mode="r") - ] - - collated_mags = collate_sample_data_mags(mags) - expected = self.get_data_path("collated/sample_data") - - # compare first dir - dircmp = filecmp.dircmp(collated_mags.path, expected) - self.assertListEqual(["MANIFEST", "sample1", "sample2"], dircmp.common) - - # Compare second dir - dircmp = filecmp.dircmp( - f"{collated_mags.path}/sample1", - f"{expected}/sample1" - ) - self.assertListEqual( - [ - "24dee6fe-9b84-45bb-8145-de7b092533a1.fasta", - "fb0bc871-04f6-486b-a10e-8e0cb66f8de3.fasta" - ], - dircmp.common - ) - - # compare third dir - dircmp = filecmp.dircmp( - f"{collated_mags.path}/sample2", - f"{expected}/sample2" - ) - self.assertListEqual( - ["d65a71fa-4279-4588-b937-0747ed5d604d.fasta"], - dircmp.common - ) - - def test_collate_feature_data_mags(self): - # collate test data - p1 = self.get_data_path("partitioned/feature_data/mag1") - p2 = self.get_data_path("partitioned/feature_data/mag2") - mags = [ - MAGSequencesDirFmt(p1, mode="r"), - MAGSequencesDirFmt(p2, mode="r") - ] - collated_mags = collate_feature_data_mags(mags) - - # compare directories - expected = self.get_data_path("collated/feature_data") - dircmp = filecmp.dircmp(collated_mags.path, expected) - self.assertListEqual( - [ - "24dee6fe-9b84-45bb-8145-de7b092533a1.fasta", - "fb0bc871-04f6-486b-a10e-8e0cb66f8de3.fasta" - ], - dircmp.common - ) diff --git a/q2_moshpit/partition/tests/test_utils.py b/q2_moshpit/partition/tests/test_utils.py deleted file mode 100644 index 16ff885a..00000000 --- a/q2_moshpit/partition/tests/test_utils.py +++ /dev/null @@ -1,47 +0,0 @@ -# ---------------------------------------------------------------------------- -# Copyright (c) 2023, QIIME 2 development team. -# -# Distributed under the terms of the Modified BSD License. -# -# The full license is in the file LICENSE, distributed with this software. -# ---------------------------------------------------------------------------- -from qiime2.plugin.testing import TestPluginBase -from ..utils import _validate_mag_ids, _validate_num_partitions - - -class TestHelpers(TestPluginBase): - package = 'q2_moshpit.partition.tests' - - def test_validate_num_partitions_None(self): - num_partitions = _validate_num_partitions(14, None) - self.assertEqual(14, num_partitions) - - def test_validate_num_partitions_Warning(self): - num_partitions = 15 - num_samples = 14 - with self.assertWarnsRegex( - Warning, - "You have requested a number of partitions" - f" '{num_partitions}' that is greater than your number" - f" of samples '{num_samples}.'" - ): - _ = _validate_num_partitions(num_samples, num_partitions) - - def test_validate_num_partitions_valid(self): - num_partitions = _validate_num_partitions(14, 2) - self.assertEqual(2, num_partitions) - - def test_validate_mag_ids_valid(self): - _validate_mag_ids( - 6, - 6, - [(0, "a"), (0, "b"), (0, "c"), (0, "d"), (0, "e"), (0, "f")] - ) - - def test_validate_mag_ids_invalid(self): - with self.assertRaisesRegex(ValueError, "MAG IDs are not unique. "): - _validate_mag_ids( - 6, - 6, - [(0, "a"), (0, "a"), (0, "c"), (0, "d"), (0, "e"), (0, "f")] - ) diff --git a/q2_moshpit/partition/utils.py b/q2_moshpit/partition/utils.py deleted file mode 100644 index 6599ebc6..00000000 --- a/q2_moshpit/partition/utils.py +++ /dev/null @@ -1,52 +0,0 @@ -# ---------------------------------------------------------------------------- -# Copyright (c) 2023, QIIME 2 development team. -# -# Distributed under the terms of the Modified BSD License. -# -# The full license is in the file LICENSE, distributed with this software. -# ---------------------------------------------------------------------------- -from typing import List -import warnings - - -def _validate_num_partitions( - num_samples: int, num_partitions: int, sample_type: str = "sample" -) -> int: - - if num_partitions is None: - return num_samples - elif num_partitions > num_samples: - warnings.warn( - "You have requested a number of partitions " - f"'{num_partitions}' that is greater than your number " - f"of {sample_type}s '{num_samples}.' Your data will be " - f"partitioned by {sample_type} into '{num_samples}' " - "partitions." - ) - return num_samples - else: - return num_partitions - - -def _validate_mag_ids( - num_partitions: int, num_mags: int, mags_all: List[tuple] -): - # If num_partitions == num_mags and MAG ids are not unique - # the output will be missing these duplicated-id MAGs. - # While this is technically impossible since - # MAGs should have unique IDs by construction, it could still happen that a - # used imports MAGs with non-unique IDs. In such case this test would be - # useful. - - if num_partitions == num_mags: - mag_ids = [mag_id[1] for mag_id in mags_all] - duplicates = [ - mag_id for mag_id in mag_ids if mag_ids.count(mag_id) > 1 - ] - if len(duplicates) > 0: - raise ValueError( - "MAG IDs are not unique. " - "They must be unique in order to output all partitions " - "correctly. Printing duplicate MAG IDs: " - f"{set(duplicates)}" - ) diff --git a/q2_moshpit/plugin_setup.py b/q2_moshpit/plugin_setup.py index 8959b9ef..b5eeca1f 100644 --- a/q2_moshpit/plugin_setup.py +++ b/q2_moshpit/plugin_setup.py @@ -33,7 +33,7 @@ from q2_types.sample_data import SampleData from q2_types.feature_map import FeatureMap, MAGtoContigs from qiime2.core.type import ( - Bool, Range, Int, Str, Float, List, Choices, Collection, Visualization + Bool, Range, Int, Str, Float, List, Choices, Visualization ) from qiime2.core.type import (Properties, TypeMap) from qiime2.plugin import (Plugin, Citations) @@ -914,104 +914,6 @@ citations=[citations["huerta_cepas_eggnog_2019"]] ) -plugin.methods.register_function( - function=q2_moshpit.partition.partition_sample_data_mags, - inputs={"mags": SampleData[MAGs]}, - parameters={"num_partitions": Int % Range(1, None)}, - outputs={"partitioned_mags": Collection[SampleData[MAGs]]}, - input_descriptions={"mags": "The MAGs to partition."}, - parameter_descriptions={ - "num_partitions": "The number of partitions to split the MAGs" - " into. Defaults to partitioning into individual" - " MAGs." - }, - name="Partition MAGs", - description="Partition a SampleData[MAGs] artifact into smaller " - "artifacts containing subsets of the MAGs", -) - -plugin.methods.register_function( - function=q2_moshpit.partition.partition_orthologs, - inputs={"orthologs": SampleData[Orthologs]}, - parameters={"num_partitions": Int % Range(1, None)}, - outputs={"partitioned_orthologs": Collection[SampleData[Orthologs]]}, - input_descriptions={"orthologs": "The orthologs to partition."}, - parameter_descriptions={ - "num_partitions": "The number of partitions to split the MAGs" - " into. Defaults to partitioning into individual" - " MAGs." - }, - name="Partition orthologs", - description="Partition a SampleData[Orthologs] artifact into smaller " - "artifacts containing subsets of the BLAST6 reports.", -) - -plugin.methods.register_function( - function=q2_moshpit.partition.collate_sample_data_mags, - inputs={"mags": List[SampleData[MAGs]]}, - parameters={}, - outputs={"collated_mags": SampleData[MAGs]}, - input_descriptions={"mags": "A collection of MAGs to be collated."}, - name="Collate mags", - description="Takes a collection of SampleData[MAGs]'s " - "and collates them into a single artifact.", -) - -plugin.methods.register_function( - function=q2_moshpit.partition.partition_feature_data_mags, - inputs={"mags": FeatureData[MAG]}, - parameters={"num_partitions": Int % Range(1, None)}, - outputs={"partitioned_mags": Collection[FeatureData[MAG]]}, - input_descriptions={"mags": "MAGs to partition."}, - parameter_descriptions={ - "num_partitions": "The number of partitions to split the MAGs" - " into. Defaults to partitioning into individual" - " MAGs." - }, - name="Partition MAGs", - description="Partition a FeatureData[MAG] artifact into smaller " - "artifacts containing subsets of the MAGs", -) - -plugin.methods.register_function( - function=q2_moshpit.partition.collate_feature_data_mags, - inputs={"mags": List[FeatureData[MAG]]}, - parameters={}, - outputs={"collated_mags": FeatureData[MAG]}, - input_descriptions={"mags": "A collection of MAGs to be collated."}, - name="Collate mags", - description="Takes a collection of FeatureData[MAG]'s " - "and collates them into a single artifact.", -) - -plugin.methods.register_function( - function=q2_moshpit.partition.collate_orthologs, - inputs={"orthologs": List[SampleData[Orthologs]]}, - parameters={}, - outputs={"collated_orthologs": SampleData[Orthologs]}, - input_descriptions={"orthologs": "Orthologs to collate"}, - parameter_descriptions={}, - name="Collate Orthologs", - description="Takes a collection SampleData[Orthologs] artifacts " - "and collates them into a single artifact.", -) - -plugin.methods.register_function( - function=q2_moshpit.partition.collate_annotations, - inputs={'ortholog_annotations': List[GenomeData[NOG]]}, - parameters={}, - outputs=[('collated_annotations', GenomeData[NOG])], - input_descriptions={ - 'ortholog_annotations': "Collection of ortholog annotations." - }, - output_descriptions={ - 'collated_annotations': "Collated ortholog annotations." - }, - name='Collate ortholog annotations.', - description="Takes a collection of GenomeData[NOG]'s " - "and collates them into a single artifact.", -) - # First bool flag only allowed to be True when the DB contains all lineages # Second bool flag only allowed to be True when the DB has property "eukaryota" # Third bool flag only allowed to be True when the DB has property "prokaryota" @@ -1202,7 +1104,7 @@ plugin.methods.register_function( - function=q2_moshpit.partition.collate_busco_results, + function=q2_moshpit.busco.collate_busco_results, inputs={"busco_results": List[BUSCOResults]}, parameters={}, outputs={"collated_busco_results": BUSCOResults}, diff --git a/setup.py b/setup.py index f7c72ac5..edc2ef35 100644 --- a/setup.py +++ b/setup.py @@ -60,6 +60,11 @@ 'data/busco_db/busco_downloads/lineages/lineage_1/hmms/*', 'data/busco_db/busco_downloads/lineages/lineage_1/info/*', 'data/busco_db/busco_downloads/lineages/lineage_1/prfl/*' + 'data/busco_results/*', + 'data/busco_results/sample1/*', + 'data/busco_results/sample2/*', + 'data/busco_results/collated/*', + ], 'q2_moshpit.busco.types.tests': [ 'data/*',