<?xml version="1.0"?>
<macros>
    <token name="@PHYLOSEQ_STRUCTURE_CMD_LINE@">
    phyloseq_structure.py
        --phyloseq-rdata '$phyloseq_rdata'
        --beta-distance-matrix '$beta_distance_matrix'
        --var-exp '$var_exp'
        --ordination-method '$ordination_method'
        --html '$html'
    </token>

    <xml name="phyloseq_structure_inputs">
        <!-- Files -->
        <param argument="--phyloseq-rdata" type="data" format="rdata" label="Phyloseq object (.Rdata)" help="RData file generated by the FROGS Stat 'Phyloseq Import data' tool."/>
        <param argument="--beta-distance-matrix" type="data" format="tsv" label="Beta diversity distance matrix file" help="TSV file generated by the FROGS Stat 'Phyloseq Beta Diversity' tool."/>
		<!-- Parameters -->
		<param argument="--var-exp" type="text" label="Grouping variable" help="Experimental variable used to group samples in the ordination plots (e.g., Treatment, Site, Host type, etc.)." optional="false" value="" >
            <expand macro="restricted_sanitizer_validator"/>
        </param>
		<param argument="--ordination-method" type="select" label="Ordination method" help="Ordination method used to visualize sample relationships based on beta diversity distances (e.g., PCoA, NMDS, DPCoA).">
			<option value="MDS" >MDS/PCoA</option>
			<option value="NMDS" >NMDS</option>
            <option value="DPCoA" >DPCoA</option>
        </param>
    </xml>

    <!-- Test -->
    <xml name="phyloseq_structure_test_input">
        <param name="phyloseq_rdata" value="references/16-phylo_import.Rdata" />
        <param name="var_exp" value="EnvType" />
		<param name="beta_distance_matrix" value="references/unifrac.tsv"/>
        <param name="ordination_method" value="MDS" />
    </xml>

    <xml name="phyloseq_structure_test_output">
        <output name="html" count="1">
            <assert_contents>
                <!-- HTML size or line diff can't be used as many information about path, os, date are present. -->
                <!-- Here we test only title, intermediate results and output of last R command -->
                <has_text text='Stat: Structure Visualisation' />
                <has_text text='(phyloseq_structure.py' />
				<has_text text='v5.1.0)' />
                <has_text text='"title":{"text":"Axis.1   [22.1%]' />
                <has_text text='"title":{"text":"Axis.2   [12.8%]' />
                <has_text text='─ Session info ───────────────────────────────────────────────────────────────' />
            </assert_contents>
        </output>
    </xml>
</macros>
