# HG changeset patch # User iuc # Date 1764667619 0 # Node ID 24431ccf6352c04468d7ba607439721a7628b9b6 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/amas commit 158ec0e635067d354c425baf14b95cb616fd93c4 diff -r 000000000000 -r 24431ccf6352 amas_replicate.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/amas_replicate.xml Tue Dec 02 09:26:59 2025 +0000 @@ -0,0 +1,98 @@ + + replicate multiple alignments + + + macros.xml + + + + amas + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff -r 000000000000 -r 24431ccf6352 check_interleaved.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/check_interleaved.py Tue Dec 02 09:26:59 2025 +0000 @@ -0,0 +1,112 @@ +""" +Helper script to check if AMAS input files are interleaved. +""" +import argparse +import re +import sys + + +def check_phylip_interleaved(filepath): + """Check if PHYLIP file is interleaved.""" + with open(filepath, encoding='utf-8') as f: + # First line is header: ntax nchar + header = next(f).strip().split() + ntax = int(header[0]) + + for idx, line in enumerate(f, 1): + if line.strip(): + if idx > ntax: + return True + + return False + + +def check_nexus_interleaved(filepath): + """Check if NEXUS file is interleaved.""" + in_data_block = False + in_matrix = False + ntax = None + seq_lines = 0 + + with open(filepath, encoding='utf-8') as f: + for line in f: + content = line.strip().lower() + + if not content: + continue + + if in_matrix: + if content == 'end;': + return seq_lines != ntax if ntax else False + + if content != ';': + seq_lines += 1 + if ntax and seq_lines > ntax: + return True + continue + + if not in_data_block: + if content.startswith('begin'): + words = content.split() + if len(words) > 1 and ( + words[1].startswith('data') + or words[1].startswith('characters')): + in_data_block = True + continue + + if content.startswith('dimensions') and ntax is None: + match = re.search(r'ntax=(\d+)', content) + if match: + ntax = int(match.group(1)) + + elif content.startswith('format'): + if re.search(r'\binterleave(?:;|=yes;?)?\b', content): + return True + + elif content.startswith('matrix'): + in_matrix = True + + return False + + +def check_fasta_interleaved(filepath): + """FASTA files are not interleaved.""" + return False + + +def main(): + parser = argparse.ArgumentParser( + description='Check if AMAS input files are interleaved' + ) + parser.add_argument('input_files', nargs='+', help='Input sequence files') + parser.add_argument('--format', required=True, + choices=['fasta', 'phylip', 'nexus'], + help='Input format') + + args = parser.parse_args() + + interleaved_status = [] + for filepath in args.input_files: + if args.format == 'phylip': + is_interleaved = check_phylip_interleaved(filepath) + elif args.format == 'nexus': + is_interleaved = check_nexus_interleaved(filepath) + else: + is_interleaved = check_fasta_interleaved(filepath) + + interleaved_status.append(is_interleaved) + + interleaved_status = list(set(interleaved_status)) + if len(interleaved_status) > 1: + raise Exception("Error: Input files are a mix of interleaved/sequential formats") + + if interleaved_status[0]: + print(f"{args.format}-int") + else: + print(args.format) + + return 0 + + +if __name__ == '__main__': + sys.exit(main()) diff -r 000000000000 -r 24431ccf6352 macros.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/macros.xml Tue Dec 02 09:26:59 2025 +0000 @@ -0,0 +1,173 @@ + + 1.0 + 0 + 25.0 + + + + amas + + + + + python -c "import amas; print(amas.__version__)" + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + out_format == "fasta" + + + + + out_format == "phylip" or out_format == "phylip-int" + + + + + out_format == "nexus" or out_format == "nexus-int" + + + + + + + + + + 10.7717/peerj.1660 + + + \ No newline at end of file diff -r 000000000000 -r 24431ccf6352 test-data/inputs/concat_1.fasta --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/inputs/concat_1.fasta Tue Dec 02 09:26:59 2025 +0000 @@ -0,0 +1,6 @@ +>OTU1 +?ACCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT +>OTU2 +ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT +>OTU10 +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA \ No newline at end of file diff -r 000000000000 -r 24431ccf6352 test-data/inputs/concat_2.fasta --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/inputs/concat_2.fasta Tue Dec 02 09:26:59 2025 +0000 @@ -0,0 +1,6 @@ +>OTU1 +?ACCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT +>OTU2 +ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT +>OTU10 +TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT \ No newline at end of file diff -r 000000000000 -r 24431ccf6352 test-data/inputs/concat_int_1.nex --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/inputs/concat_int_1.nex Tue Dec 02 09:26:59 2025 +0000 @@ -0,0 +1,22 @@ +#NEXUS + +BEGIN DATA; + DIMENSIONS NTAX=3 NCHAR=300; + FORMAT INTERLEAVE DATATYPE=DNA GAP = - MISSING = ?; + MATRIX +Taxon_A ATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCAT +Taxon_B GCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGT +Taxon_C TTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCT + +Taxon_A ATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCAT +Taxon_B GCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGT +Taxon_C TTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCT + +Taxon_A ATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCAT +Taxon_B GCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGT +Taxon_C TTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCT + + +; + +END; \ No newline at end of file diff -r 000000000000 -r 24431ccf6352 test-data/inputs/concat_int_1.phylip --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/inputs/concat_int_1.phylip Tue Dec 02 09:26:59 2025 +0000 @@ -0,0 +1,12 @@ +3 300 +Taxon_A ATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCAT +Taxon_B GCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGT +Taxon_C TTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCT + +ATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCAT +GCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGT +TTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCT + +ATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCAT +GCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGT +TTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCT \ No newline at end of file diff -r 000000000000 -r 24431ccf6352 test-data/inputs/concat_int_2.nex --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/inputs/concat_int_2.nex Tue Dec 02 09:26:59 2025 +0000 @@ -0,0 +1,19 @@ +#NEXUS + +Begin data; + Dimensions Nchar=300 Ntax=3; + Format Datatype=DNA Gap = - Missing = ? Interleave=yes; + matrix +Taxon_A AAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCC +Taxon_B GGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAA +Taxon_C TTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGG + +Taxon_A GGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTT +Taxon_B CCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTT +Taxon_C AAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCC + +Taxon_A AAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCC +Taxon_B GGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAA +Taxon_C TTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGG +; +End; \ No newline at end of file diff -r 000000000000 -r 24431ccf6352 test-data/inputs/concat_int_2.phylip --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/inputs/concat_int_2.phylip Tue Dec 02 09:26:59 2025 +0000 @@ -0,0 +1,12 @@ +3 300 +Taxon_A AAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCC +Taxon_B GGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAA +Taxon_C TTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGG + +GGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTT +CCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTT +AAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCC + +AAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCC +GGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAA +TTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGG \ No newline at end of file diff -r 000000000000 -r 24431ccf6352 test-data/inputs/concat_int_3.nex --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/inputs/concat_int_3.nex Tue Dec 02 09:26:59 2025 +0000 @@ -0,0 +1,16 @@ +#NEXUS + +begin data; + dimensions nchar=200 ntax=3; + format datatype=DNA gap = - missing = ?; + matrix +Taxon_A AAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCC +Taxon_B GGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAA +Taxon_C TTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGG + +Taxon_A GGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTT +Taxon_B CCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTT +Taxon_C AAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCC + +; +end; \ No newline at end of file diff -r 000000000000 -r 24431ccf6352 test-data/inputs/concat_result.phylip --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/inputs/concat_result.phylip Tue Dec 02 09:26:59 2025 +0000 @@ -0,0 +1,4 @@ +3 200 +OTU1 ?ACCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT?ACCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT +OTU10 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT +OTU2 ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCTACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT \ No newline at end of file diff -r 000000000000 -r 24431ccf6352 test-data/inputs/fasta1.fas --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/inputs/fasta1.fas Tue Dec 02 09:26:59 2025 +0000 @@ -0,0 +1,20 @@ +>OTU1 +?ACCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT +>OTU2 +ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT +>OTU3 +ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT +>OTU4 +ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT +>OTU5 +ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT +>OTU6 +ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT +>OTU7 +ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT +>OTU8 +ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT +>OTU9 +ACACATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT +>OTU10 +ACACATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT diff -r 000000000000 -r 24431ccf6352 test-data/inputs/partitions_concat.nex --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/inputs/partitions_concat.nex Tue Dec 02 09:26:59 2025 +0000 @@ -0,0 +1,6 @@ +#NEXUS + +Begin sets; + charset p1_concat_1 = 1-100; + charset p2_concat_2 = 101-200; +End; \ No newline at end of file diff -r 000000000000 -r 24431ccf6352 test-data/inputs/partitions_concat_unspecified.txt --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/inputs/partitions_concat_unspecified.txt Tue Dec 02 09:26:59 2025 +0000 @@ -0,0 +1,2 @@ +p1_concat_1 = 1-100 +p2_concat_2 = 101-200 diff -r 000000000000 -r 24431ccf6352 test-data/inputs/remove_input.nex --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/inputs/remove_input.nex Tue Dec 02 09:26:59 2025 +0000 @@ -0,0 +1,20 @@ +#NEXUS + +BEGIN DATA; + DIMENSIONS NTAX=10 NCHAR=100; + FORMAT DATATYPE=DNA GAP = - MISSING = ?; + MATRIX + OTU1 ?ACCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT + OTU10 ACACATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT + OTU2 ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT + OTU3 ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT + OTU4 ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT + OTU5 ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT + OTU6 ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT + OTU7 ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT + OTU8 ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT + OTU9 ACACATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT + +; + +END; \ No newline at end of file diff -r 000000000000 -r 24431ccf6352 test-data/outputs/expected_concat.phylip --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/outputs/expected_concat.phylip Tue Dec 02 09:26:59 2025 +0000 @@ -0,0 +1,4 @@ +3 200 +OTU1 ?ACCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT?ACCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT +OTU10 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAATTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT +OTU2 ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCTACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT diff -r 000000000000 -r 24431ccf6352 test-data/outputs/expected_concat_fasta.fas --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/outputs/expected_concat_fasta.fas Tue Dec 02 09:26:59 2025 +0000 @@ -0,0 +1,12 @@ +>OTU1 +?ACCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCA +ACTGCTTAGCTCCACTCGCT?ACCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTC +CAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT +>OTU10 +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAATTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT +TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT +>OTU2 +ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCA +ACTGCTTAGCTCCACTCGCTACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTC +CAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT diff -r 000000000000 -r 24431ccf6352 test-data/outputs/expected_concat_int.nex --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/outputs/expected_concat_int.nex Tue Dec 02 09:26:59 2025 +0000 @@ -0,0 +1,18 @@ +#NEXUS + +BEGIN DATA; + DIMENSIONS NTAX=3 NCHAR=600; + FORMAT INTERLEAVE DATATYPE=DNA GAP = - MISSING = ?; + MATRIX +Taxon_A ATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTT +Taxon_B GCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAACCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTT +Taxon_C TTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCC + +AAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCC +GGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAA +TTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGG + + +; + +END; \ No newline at end of file diff -r 000000000000 -r 24431ccf6352 test-data/outputs/expected_concat_int_multi.nex --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/outputs/expected_concat_int_multi.nex Tue Dec 02 09:26:59 2025 +0000 @@ -0,0 +1,18 @@ +#NEXUS + +BEGIN DATA; + DIMENSIONS NTAX=3 NCHAR=800; + FORMAT INTERLEAVE DATATYPE=DNA GAP = - MISSING = ?; + MATRIX +Taxon_A ATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATATGCATGCATAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTT +Taxon_B GCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGCTAGCTAGTGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAACCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTT +Taxon_C TTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTAGCTAGCTTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCC + +AAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTT +GGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAAGGGGGAAAAACCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTTCCCCCTTTTT +TTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGTTTTTGGGGGAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCCAAAAACCCCC + + +; + +END; \ No newline at end of file diff -r 000000000000 -r 24431ccf6352 test-data/outputs/expected_partitions.nex --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/outputs/expected_partitions.nex Tue Dec 02 09:26:59 2025 +0000 @@ -0,0 +1,6 @@ +#NEXUS + +Begin sets; + charset p1_concat_1 = 1-100; + charset p2_concat_2 = 101-200; +End; \ No newline at end of file diff -r 000000000000 -r 24431ccf6352 test-data/outputs/expected_partitions_int.txt --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/outputs/expected_partitions_int.txt Tue Dec 02 09:26:59 2025 +0000 @@ -0,0 +1,2 @@ +p1_concat_int_1 = 1-300 +p2_concat_int_2 = 301-600 diff -r 000000000000 -r 24431ccf6352 test-data/outputs/expected_partitions_int_multi.txt --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/outputs/expected_partitions_int_multi.txt Tue Dec 02 09:26:59 2025 +0000 @@ -0,0 +1,3 @@ +p1_concat_int_1 = 1-300 +p2_concat_int_2 = 301-600 +p3_concat_int_3 = 601-800 diff -r 000000000000 -r 24431ccf6352 test-data/outputs/expected_partitions_raxml.txt --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/outputs/expected_partitions_raxml.txt Tue Dec 02 09:26:59 2025 +0000 @@ -0,0 +1,2 @@ +DNA, p1_concat_1 = 1-100 +DNA, p2_concat_2 = 101-200 diff -r 000000000000 -r 24431ccf6352 test-data/outputs/expected_remove_filtered.int-nex --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/outputs/expected_remove_filtered.int-nex Tue Dec 02 09:26:59 2025 +0000 @@ -0,0 +1,19 @@ +#NEXUS + +BEGIN DATA; + DIMENSIONS NTAX=8 NCHAR=100; + FORMAT INTERLEAVE DATATYPE=DNA GAP = - MISSING = ?; + MATRIX +OTU1 ?ACCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT +OTU2 ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT +OTU3 ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT +OTU4 ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT +OTU5 ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT +OTU6 ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT +OTU7 ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT +OTU8 ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT + + +; + +END; \ No newline at end of file diff -r 000000000000 -r 24431ccf6352 test-data/outputs/expected_replicate1.nex --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/outputs/expected_replicate1.nex Tue Dec 02 09:26:59 2025 +0000 @@ -0,0 +1,20 @@ +#NEXUS + +BEGIN DATA; + DIMENSIONS NTAX=10 NCHAR=100; + FORMAT DATATYPE=DNA GAP = - MISSING = ?; + MATRIX + OTU1 ?ACCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT + OTU10 ACACATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT + OTU2 ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT + OTU3 ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT + OTU4 ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT + OTU5 ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT + OTU6 ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT + OTU7 ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT + OTU8 ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT + OTU9 ACACATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT + +; + +END; \ No newline at end of file diff -r 000000000000 -r 24431ccf6352 test-data/outputs/expected_replicate2.nex --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/outputs/expected_replicate2.nex Tue Dec 02 09:26:59 2025 +0000 @@ -0,0 +1,20 @@ +#NEXUS + +BEGIN DATA; + DIMENSIONS NTAX=10 NCHAR=100; + FORMAT DATATYPE=DNA GAP = - MISSING = ?; + MATRIX + OTU1 ?ACCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT + OTU10 ACACATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT + OTU2 ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT + OTU3 ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT + OTU4 ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT + OTU5 ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT + OTU6 ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT + OTU7 ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT + OTU8 ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT + OTU9 ACACATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCAACTGCTTAGCTCCACTCGCT + +; + +END; \ No newline at end of file diff -r 000000000000 -r 24431ccf6352 test-data/outputs/expected_split_partition1.fas --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/outputs/expected_split_partition1.fas Tue Dec 02 09:26:59 2025 +0000 @@ -0,0 +1,9 @@ +>OTU1 +?ACCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCA +ACTGCTTAGCTCCACTCGCT +>OTU10 +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAA +>OTU2 +ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCA +ACTGCTTAGCTCCACTCGCT diff -r 000000000000 -r 24431ccf6352 test-data/outputs/expected_split_partition2.fas --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/outputs/expected_split_partition2.fas Tue Dec 02 09:26:59 2025 +0000 @@ -0,0 +1,9 @@ +>OTU1 +?ACCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCA +ACTGCTTAGCTCCACTCGCT +>OTU10 +TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT +TTTTTTTTTTTTTTTTTTTT +>OTU2 +ACCCATGTTTGTTGTAGGAGTCAACTTAGAAGCTTATGACCCATCCTATAAAGTCATCTCCAATGCCTCGTGCACAACCA +ACTGCTTAGCTCCACTCGCT diff -r 000000000000 -r 24431ccf6352 test-data/outputs/expected_summary.txt --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/outputs/expected_summary.txt Tue Dec 02 09:26:59 2025 +0000 @@ -0,0 +1,2 @@ +Alignment_name No_of_taxa Alignment_length Total_matrix_cells Undetermined_characters Missing_percent No_variable_sites Proportion_variable_sites Parsimony_informative_sites Proportion_parsimony_informative AT_content GC_content A C G T K M R Y S W B V H D X N O - ? +fasta1.fas 10 100 1000 1 0.1 2 0.02 1 0.01 0.543 0.457 262 297 160 280 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 \ No newline at end of file diff -r 000000000000 -r 24431ccf6352 test-data/outputs/expected_taxa_summary.txt --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/test-data/outputs/expected_taxa_summary.txt Tue Dec 02 09:26:59 2025 +0000 @@ -0,0 +1,11 @@ +Alignment_name Taxon_name Sequence_length Undetermined_characters Missing_percent AT_content GC_content A C G T K M R Y S W B V H D X N O - ? +fasta1.fas OTU1 100 1 1.0 0.545 0.455 26 29 16 28 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 +fasta1.fas OTU10 100 0 0.0 0.55 0.45 27 29 16 28 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +fasta1.fas OTU2 100 0 0.0 0.54 0.46 26 30 16 28 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +fasta1.fas OTU3 100 0 0.0 0.54 0.46 26 30 16 28 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +fasta1.fas OTU4 100 0 0.0 0.54 0.46 26 30 16 28 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +fasta1.fas OTU5 100 0 0.0 0.54 0.46 26 30 16 28 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +fasta1.fas OTU6 100 0 0.0 0.54 0.46 26 30 16 28 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +fasta1.fas OTU7 100 0 0.0 0.54 0.46 26 30 16 28 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +fasta1.fas OTU8 100 0 0.0 0.54 0.46 26 30 16 28 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 +fasta1.fas OTU9 100 0 0.0 0.55 0.45 27 29 16 28 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 \ No newline at end of file