changeset 0:8ad970e2c137 draft default tip

planemo upload
author lecorguille
date Wed, 10 May 2017 11:28:01 -0400
parents
children
files LICENSE README README.md test-data/expected_dataMatrix.tsv test-data/expected_sampleMetadata.tsv test-data/expected_variableMetadata.tsv test-data/input_dataMatrix.tsv test-data/input_sampleMetadata.tsv test-data/input_variableMetadata.tsv test_log.txt w4mclassfilter.xml w4mclassfilter_wrapper.R
diffstat 12 files changed, 984 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/LICENSE	Wed May 10 11:28:01 2017 -0400
@@ -0,0 +1,21 @@
+MIT License
+
+Copyright (c) 2017 Hegeman Lab
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/README	Wed May 10 11:28:01 2017 -0400
@@ -0,0 +1,7 @@
+# w4mclassfilter_galaxy_wrapper
+
+planemo <http://planemo.readthedocs.io/en/latest/> 
+oriented galaxy-tool-wrapper <https://docs.galaxyproject.org/en/latest/dev/schema.htm>
+to wrap the w4mclassfilter R package <https://github.com/HegemanLab/w4mclassfilter> 
+for use with the Workflow4Metabolomics <http://workflow4metabolomics.org/>
+flavor of Galaxy <https://galaxyproject.org/>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/README.md	Wed May 10 11:28:01 2017 -0400
@@ -0,0 +1,7 @@
+# w4mclassfilter_galaxy_wrapper
+
+[planemo](http://planemo.readthedocs.io/en/latest/)-oriented
+[galaxy-tool-wrapper](https://docs.galaxyproject.org/en/latest/dev/schema.htm) to wrap the
+[w4mclassfilter R package](https://github.com/HegemanLab/w4mclassfilter) for use with the
+[Workflow4Metabolomics](http://workflow4metabolomics.org/) flavor of
+[Galaxy](https://galaxyproject.org/)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/expected_dataMatrix.tsv	Wed May 10 11:28:01 2017 -0400
@@ -0,0 +1,16 @@
+	HU_017	HU_034	HU_078	HU_091	HU_093	HU_099	HU_130	HU_134	HU_138
+HMDB03193	76043	44943	173175	242549	57066	559869	339188	471368	262271
+HMDB01101	30689	52217	229568	4763576	3878773	976436	608298	1605075	72021
+HMDB01101.1	6877586	3158	4763576	3878773	976436	831937	1605075	72021	442510
+HMDB10348	47259	60885	168264	176500	76457	610110	279156	524468	451573
+HMDB59717	357351	301983	1028110	1530493	270027	1378535	808334	1132813	871209
+HMDB13189	2644620	1661412	2755434	593863	837865	3526136	1608814	3446611	1941527
+HMDB00299	250551	456162	808657	614370	250403	768004	504108	1014041	1362408
+HMDB00191	560002	575790	785428	645785	591569	960658	639437	1092885	1409045
+HMDB00518	0	85944	129886	175800	13154	230242	440223	315368	10657
+HMDB00715	1252089	905408	5140022	2658555	814523	2558923	4184204	3865723	3236644
+HMDB01032	2569205	1604999	26222916	257139	675754	59906109	31151730	18648127	14989438
+HMDB00208	747080	595872	3143654	4059767	1433702	5593888	2477288	3346077	4230072
+HMDB04824	374028	539206	959381	605191	310260	1253319	477995	825691	1157093
+HMDB00512	0	280560	556003	590779	209285	342532	569970	525240	246282
+HMDB00251	368600	94936	293988	352855	767894	268331	310918	1248919	577184
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/expected_sampleMetadata.tsv	Wed May 10 11:28:01 2017 -0400
@@ -0,0 +1,10 @@
+sampleMetadata	injectionOrder	mode	age	bmi	gender
+HU_017	2	pos	41	23.03	M
+HU_034	9	pos	52	23.37	M
+HU_078	34	pos	46	25.18	M
+HU_091	42	pos	61	26.12	M
+HU_093	43	pos	53	21.71	M
+HU_099	46	pos	23	21.3	M
+HU_130	63	pos	33	26.06	M
+HU_134	67	pos	48	22.89	M
+HU_138	68	pos	42	21.88	M
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/expected_variableMetadata.tsv	Wed May 10 11:28:01 2017 -0400
@@ -0,0 +1,16 @@
+variableMetadata	name
+HMDB03193	Testosterone_glucuronide
+HMDB01101	p-Anisic_acid
+HMDB01101.1	p-Anisic_acid_2
+HMDB10348	Dehydroepiandrosterone_3-glucuronide
+HMDB59717	Glu-Val
+HMDB13189	3-Indole_carboxylic_acid_glucuronide
+HMDB00299	Xanthosine
+HMDB00191	L-Aspartic_acid
+HMDB00518	Chenodeoxycholic_acid
+HMDB00715	Kynurenic_acid
+HMDB01032	Dehydroepiandrosterone_sulfate
+HMDB00208	Oxoglutaric_acid
+HMDB04824	N2,N2-Dimethylguanosine
+HMDB00512	N-Acetyl-L-phenylalanine
+HMDB00251	Taurine
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/input_dataMatrix.tsv	Wed May 10 11:28:01 2017 -0400
@@ -0,0 +1,17 @@
+dataMatrix	HU_017	HU_028	HU_034	HU_051	HU_060	HU_078	HU_091	HU_093	HU_099	HU_110	HU_130	HU_134	HU_138	HU_149	HU_152	HU_175	HU_178	HU_185	HU_204	HU_208
+HMDB03193	76043	412165	44943	27242	436566	173175	242549	57066	559869	3732	339188	471368	262271	127285	451270	212500	79673	NA	891129	43907
+HMDB01101	30689	6877586	52217	3158	10789748	229568	4763576	3878773	976436	831937	608298	1605075	72021	442510	1107705	1464339	31250	2724553	891129	32742
+HMDB01101	6877586	52217	3158	10789748	229568	4763576	3878773	976436	831937	608298	1605075	72021	442510	1107705	1464339	31250	2724553	72900	891129	30689
+HMDB10348	47259	544877	60885	34582	529874	168264	176500	76457	610110	16262	279156	524468	451573	591487	433529	161069	214392	13781	891129	39315
+HMDB59717	357351	1030464	301983	67604	306862	1028110	1530493	270027	1378535	289677	808334	1132813	871209	895435	715190	1563158	784738	146195	891129	239030
+HMDB00822	14627	14627	14627	14627	14627	14627	14627	14627	14627	14627	14627	14627	14627	14627	14627	14627	14627	14627	14627	14627
+HMDB13189	2644620	727587	1661412	619181	136278	2755434	593863	837865	3526136	2003278	1608814	3446611	1941527	113937	3132404	2893445	2092753	1034666	891129	841661
+HMDB00299	250551	1046138	456162	159386	1013302	808657	614370	250403	768004	242085	504108	1014041	1362408	1057660	1110050	566050	411886	142233	891129	284775
+HMDB00191	560002	771533	575790	392284	888498	785428	645785	591569	960658	910201	639437	1092885	1409045	2292023	1246459	1945577	710519	773384	891129	622898
+HMDB00518	-34236	58249	85944	NA	342102	129886	175800	13154	230242	NA	440223	315368	10657	419508	48673	28361	514579	23108	891129	73831
+HMDB00715	1252089	2547452	905408	371059	4983588	5140022	2658555	814523	2558923	859466	4184204	3865723	3236644	2615560	3820724	3577833	2295288	625924	891129	1341900
+HMDB01032	2569205	26023086	1604999	430453	8103558	26222916	257139	675754	59906109	263055	31151730	18648127	14989438	1554658	20249262	5588731	871010	15920	891129	44276
+HMDB00208	747080	13420742	595872	1172376	7172632	3143654	4059767	1433702	5593888	5402629	2477288	3346077	4230072	7621236	8960828	10335722	7037373	1574738	891129	2540044
+HMDB04824	374028	1144386	539206	178517	1046190	959381	605191	310260	1253319	477259	477995	825691	1157093	1089284	1411802	1020206	782673	346761	891129	387811
+HMDB00512	NA	319783	280560	85009	1333877	556003	590779	209285	342532	198512	569970	525240	246282	1140422	542345	1171008	827723	222953	891129	85554
+HMDB00251	368600	616555	94936	622468	180988	293988	352855	767894	268331	167246	310918	1248919	577184	10985	335711	403815	80614	63393	891129	616061
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/input_sampleMetadata.tsv	Wed May 10 11:28:01 2017 -0400
@@ -0,0 +1,21 @@
+sampleMetadata	injectionOrder	mode	age	bmi	gender
+HU_017	2	pos	41	23.03	M
+HU_028	7	pos	41	23.92	F
+HU_034	9	pos	52	23.37	M
+HU_051	20	pos	24	23.23	F
+HU_060	24	pos	55	28.72	F
+HU_078	34	pos	46	25.18	M
+HU_091	42	pos	61	26.12	M
+HU_093	43	pos	53	21.71	M
+HU_099	46	pos	23	21.3	M
+HU_110	53	pos	50	20.9	F
+HU_130	63	pos	33	26.06	M
+HU_134	67	pos	48	22.89	M
+HU_138	68	pos	42	21.88	M
+HU_149	72	pos	35	19.49	F
+HU_152	75	pos	26	17.58	F
+HU_175	87	pos	35	21.26	F
+HU_178	88	pos	60	32.87	F
+HU_185	95	pos	42	21.09	F
+HU_204	104	pos	31	29.06	M
+HU_208	106	pos	27	18.61	F
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/input_variableMetadata.tsv	Wed May 10 11:28:01 2017 -0400
@@ -0,0 +1,17 @@
+variableMetadata	name
+HMDB03193	Testosterone_glucuronide
+HMDB01101	p-Anisic_acid
+HMDB01101	p-Anisic_acid_2
+HMDB10348	Dehydroepiandrosterone_3-glucuronide
+HMDB59717	Glu-Val
+HMDB00822	p-Hydroxymandelic_acid
+HMDB13189	3-Indole_carboxylic_acid_glucuronide
+HMDB00299	Xanthosine
+HMDB00191	L-Aspartic_acid
+HMDB00518	Chenodeoxycholic_acid
+HMDB00715	Kynurenic_acid
+HMDB01032	Dehydroepiandrosterone_sulfate
+HMDB00208	Oxoglutaric_acid
+HMDB04824	N2,N2-Dimethylguanosine
+HMDB00512	N-Acetyl-L-phenylalanine
+HMDB00251	Taurine
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test_log.txt	Wed May 10 11:28:01 2017 -0400
@@ -0,0 +1,334 @@
+git --git-dir /home/backdoor/.planemo/gx_repo fetch >/dev/null 2>&1
+cd /tmp/tmpBnX6kx; git clone  --branch 'master' '/home/backdoor/.planemo/gx_repo' 'galaxy-dev'; cd galaxy-dev; if [ -d .venv ] || [ -f dist-eggs.ini ]; then GALAXY_VIRTUAL_ENV=.venv;  else GALAXY_VIRTUAL_ENV=/home/backdoor/.planemo/gx_venv; fi; export GALAXY_VIRTUAL_ENV; if [ ! -e $GALAXY_VIRTUAL_ENV ]; then /home/backdoor/.linuxbrew/bin/virtualenv -p /home/backdoor/.linuxbrew/bin/python2.7 $GALAXY_VIRTUAL_ENV; fi; [ -e $GALAXY_VIRTUAL_ENV ] && . $GALAXY_VIRTUAL_ENV/bin/activate; COMMON_STARTUP_ARGS=; $(grep -q 'skip-venv' run_tests.sh) && COMMON_STARTUP_ARGS="--dev-wheels"; export COMMON_STARTUP_ARGS; echo "Set COMMON_STARTUP_ARGS to ${COMMON_STARTUP_ARGS}"; ./scripts/common_startup.sh ${COMMON_STARTUP_ARGS}
+Cloning into 'galaxy-dev'...
+done.
+Set COMMON_STARTUP_ARGS to --dev-wheels
+Initializing config/migrated_tools_conf.xml from migrated_tools_conf.xml.sample
+Initializing config/shed_tool_conf.xml from shed_tool_conf.xml.sample
+Initializing config/shed_tool_data_table_conf.xml from shed_tool_data_table_conf.xml.sample
+Initializing config/shed_data_manager_conf.xml from shed_data_manager_conf.xml.sample
+Initializing tool-data/shared/ucsc/builds.txt from builds.txt.sample
+Initializing tool-data/shared/ucsc/manual_builds.txt from manual_builds.txt.sample
+Initializing tool-data/shared/ucsc/ucsc_build_sites.txt from ucsc_build_sites.txt.sample
+Initializing tool-data/shared/igv/igv_build_sites.txt from igv_build_sites.txt.sample
+Initializing tool-data/shared/rviewer/rviewer_build_sites.txt from rviewer_build_sites.txt.sample
+Initializing static/welcome.html from welcome.html.sample
+Activating virtualenv at /home/backdoor/.planemo/gx_venv
+Requirement already satisfied: pip>=8.1 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages
+Requirement already satisfied: bx-python==0.7.3 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 2))
+Requirement already satisfied: MarkupSafe==0.23 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 3))
+Requirement already satisfied: PyYAML==3.11 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 4))
+Requirement already satisfied: SQLAlchemy==1.0.15 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 5))
+Requirement already satisfied: mercurial==3.7.3 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 6))
+Requirement already satisfied: numpy==1.9.2 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 7))
+Requirement already satisfied: pycrypto==2.6.1 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 8))
+Requirement already satisfied: Paste==2.0.2 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 15))
+Requirement already satisfied: PasteDeploy==1.5.2 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 16))
+Requirement already satisfied: docutils==0.12 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 17))
+Requirement already satisfied: wchartype==0.1 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 18))
+Requirement already satisfied: repoze.lru==0.6 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 19))
+Requirement already satisfied: Routes==2.2 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 20))
+Requirement already satisfied: WebOb==1.4.1 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 21))
+Requirement already satisfied: WebHelpers==1.3 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 22))
+Requirement already satisfied: Mako==1.0.2 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 23))
+Requirement already satisfied: pytz==2015.4 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 24))
+Requirement already satisfied: Babel==2.0 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 25))
+Requirement already satisfied: Beaker==1.7.0 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 26))
+Requirement already satisfied: dictobj==0.3.1 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 27))
+Requirement already satisfied: nose==1.3.7 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 28))
+Requirement already satisfied: Parsley==1.3 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 29))
+Requirement already satisfied: six==1.10.0 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 30))
+Requirement already satisfied: Whoosh==2.7.4 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 31))
+Requirement already satisfied: testfixtures==4.10.0 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 32))
+Requirement already satisfied: galaxy_sequence_utils==1.0.2 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 33))
+Requirement already satisfied: Cheetah==2.4.4 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 36))
+Requirement already satisfied: Markdown==2.6.3 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 37))
+Requirement already satisfied: bioblend==0.7.0 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 40))
+Requirement already satisfied: boto==2.38.0 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 41))
+Requirement already satisfied: requests==2.8.1 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 42))
+Requirement already satisfied: requests-toolbelt==0.4.0 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 43))
+Requirement already satisfied: kombu==3.0.30 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 46))
+Requirement already satisfied: amqp==1.4.8 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 47))
+Requirement already satisfied: anyjson==0.3.3 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 48))
+Requirement already satisfied: psutil==4.1.0 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 51))
+Requirement already satisfied: pulsar-galaxy-lib==0.7.0.dev5 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 52))
+Requirement already satisfied: sqlalchemy-migrate==0.10.0 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 55))
+Requirement already satisfied: decorator==4.0.2 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 56))
+Requirement already satisfied: Tempita==0.5.3dev in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 57))
+Requirement already satisfied: sqlparse==0.1.16 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 58))
+Requirement already satisfied: pbr==1.8.0 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 59))
+Requirement already satisfied: svgwrite==1.1.6 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 62))
+Requirement already satisfied: pyparsing==2.1.1 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 63))
+Requirement already satisfied: Fabric==1.10.2 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 66))
+Requirement already satisfied: paramiko==1.15.2 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 67))
+Requirement already satisfied: ecdsa==0.13 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 68))
+Requirement already satisfied: pysam==0.8.4+gx5 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 71))
+Requirement already satisfied: PasteScript in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from pulsar-galaxy-lib==0.7.0.dev5->-r requirements.txt (line 52))
+Requirement already satisfied: nose in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r ./lib/galaxy/dependencies/dev-requirements.txt (line 1))
+Requirement already satisfied: NoseHTML in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r ./lib/galaxy/dependencies/dev-requirements.txt (line 2))
+Requirement already satisfied: twill==0.9.1 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r ./lib/galaxy/dependencies/dev-requirements.txt (line 3))
+Requirement already satisfied: mock in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r ./lib/galaxy/dependencies/dev-requirements.txt (line 4))
+Requirement already satisfied: selenium in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r ./lib/galaxy/dependencies/dev-requirements.txt (line 5))
+Requirement already satisfied: pbr>=0.11 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from mock->-r ./lib/galaxy/dependencies/dev-requirements.txt (line 4))
+Requirement already satisfied: funcsigs>=1; python_version < "3.3" in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from mock->-r ./lib/galaxy/dependencies/dev-requirements.txt (line 4))
+Requirement already satisfied: six>=1.9 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from mock->-r ./lib/galaxy/dependencies/dev-requirements.txt (line 4))
+Testing using galaxy_root /tmp/tmpBnX6kx/galaxy-dev
+Testing tools with command [cd /tmp/tmpBnX6kx/galaxy-dev; if [ -d .venv ] || [ -f dist-eggs.ini ]; then GALAXY_VIRTUAL_ENV=.venv;  else GALAXY_VIRTUAL_ENV=/home/backdoor/.planemo/gx_venv; fi; export GALAXY_VIRTUAL_ENV; if [ ! -e $GALAXY_VIRTUAL_ENV ]; then /home/backdoor/.linuxbrew/bin/virtualenv -p /home/backdoor/.linuxbrew/bin/python2.7 $GALAXY_VIRTUAL_ENV; fi; [ -e $GALAXY_VIRTUAL_ENV ] && . $GALAXY_VIRTUAL_ENV/bin/activate; sh run_tests.sh $COMMON_STARTUP_ARGS --report_file /home/backdoor/toolshed_test/w4mclassfilter/tool_test_output.html --xunit_report_file /tmp/tmpBnX6kx/xunit.xml --structured_data_report_file /home/backdoor/toolshed_test/w4mclassfilter/tool_test_output.json functional.test_toolbox]
+Activating virtualenv at /home/backdoor/.planemo/gx_venv
+Requirement already satisfied: pip>=8.1 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages
+Requirement already satisfied: bx-python==0.7.3 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 2))
+Requirement already satisfied: MarkupSafe==0.23 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 3))
+Requirement already satisfied: PyYAML==3.11 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 4))
+Requirement already satisfied: SQLAlchemy==1.0.15 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 5))
+Requirement already satisfied: mercurial==3.7.3 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 6))
+Requirement already satisfied: numpy==1.9.2 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 7))
+Requirement already satisfied: pycrypto==2.6.1 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 8))
+Requirement already satisfied: Paste==2.0.2 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 15))
+Requirement already satisfied: PasteDeploy==1.5.2 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 16))
+Requirement already satisfied: docutils==0.12 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 17))
+Requirement already satisfied: wchartype==0.1 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 18))
+Requirement already satisfied: repoze.lru==0.6 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 19))
+Requirement already satisfied: Routes==2.2 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 20))
+Requirement already satisfied: WebOb==1.4.1 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 21))
+Requirement already satisfied: WebHelpers==1.3 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 22))
+Requirement already satisfied: Mako==1.0.2 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 23))
+Requirement already satisfied: pytz==2015.4 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 24))
+Requirement already satisfied: Babel==2.0 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 25))
+Requirement already satisfied: Beaker==1.7.0 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 26))
+Requirement already satisfied: dictobj==0.3.1 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 27))
+Requirement already satisfied: nose==1.3.7 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 28))
+Requirement already satisfied: Parsley==1.3 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 29))
+Requirement already satisfied: six==1.10.0 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 30))
+Requirement already satisfied: Whoosh==2.7.4 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 31))
+Requirement already satisfied: testfixtures==4.10.0 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 32))
+Requirement already satisfied: galaxy_sequence_utils==1.0.2 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 33))
+Requirement already satisfied: Cheetah==2.4.4 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 36))
+Requirement already satisfied: Markdown==2.6.3 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 37))
+Requirement already satisfied: bioblend==0.7.0 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 40))
+Requirement already satisfied: boto==2.38.0 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 41))
+Requirement already satisfied: requests==2.8.1 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 42))
+Requirement already satisfied: requests-toolbelt==0.4.0 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 43))
+Requirement already satisfied: kombu==3.0.30 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 46))
+Requirement already satisfied: amqp==1.4.8 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 47))
+Requirement already satisfied: anyjson==0.3.3 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 48))
+Requirement already satisfied: psutil==4.1.0 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 51))
+Requirement already satisfied: pulsar-galaxy-lib==0.7.0.dev5 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 52))
+Requirement already satisfied: sqlalchemy-migrate==0.10.0 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 55))
+Requirement already satisfied: decorator==4.0.2 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 56))
+Requirement already satisfied: Tempita==0.5.3dev in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 57))
+Requirement already satisfied: sqlparse==0.1.16 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 58))
+Requirement already satisfied: pbr==1.8.0 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 59))
+Requirement already satisfied: svgwrite==1.1.6 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 62))
+Requirement already satisfied: pyparsing==2.1.1 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 63))
+Requirement already satisfied: Fabric==1.10.2 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 66))
+Requirement already satisfied: paramiko==1.15.2 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 67))
+Requirement already satisfied: ecdsa==0.13 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 68))
+Requirement already satisfied: pysam==0.8.4+gx5 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r requirements.txt (line 71))
+Requirement already satisfied: PasteScript in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from pulsar-galaxy-lib==0.7.0.dev5->-r requirements.txt (line 52))
+Requirement already satisfied: nose in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r ./lib/galaxy/dependencies/dev-requirements.txt (line 1))
+Requirement already satisfied: NoseHTML in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r ./lib/galaxy/dependencies/dev-requirements.txt (line 2))
+Requirement already satisfied: twill==0.9.1 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r ./lib/galaxy/dependencies/dev-requirements.txt (line 3))
+Requirement already satisfied: mock in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r ./lib/galaxy/dependencies/dev-requirements.txt (line 4))
+Requirement already satisfied: selenium in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from -r ./lib/galaxy/dependencies/dev-requirements.txt (line 5))
+Requirement already satisfied: pbr>=0.11 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from mock->-r ./lib/galaxy/dependencies/dev-requirements.txt (line 4))
+Requirement already satisfied: funcsigs>=1; python_version < "3.3" in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from mock->-r ./lib/galaxy/dependencies/dev-requirements.txt (line 4))
+Requirement already satisfied: six>=1.9 in /home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages (from mock->-r ./lib/galaxy/dependencies/dev-requirements.txt (line 4))
+Activating virtualenv at /home/backdoor/.planemo/gx_venv
+2017-05-09 17:41:18,784 INFO  [galaxy.queue_worker] Initializing main Galaxy Queue Worker on sqlalchemy+sqlite://
+2017-05-09 17:41:18,932 INFO  [galaxy.model.migrate.check] Migrating 127 -> 128... 
+2017-05-09 17:41:19,345 INFO  [galaxy.model.migrate.check] 
+2017-05-09 17:41:19,345 INFO  [galaxy.model.migrate.check] Migration script to add session update time (used for timeouts)
+2017-05-09 17:41:19,345 INFO  [galaxy.model.migrate.check] 
+2017-05-09 17:41:19,345 INFO  [galaxy.model.migrate.check] 
+2017-05-09 17:41:19,345 INFO  [galaxy.model.migrate.check] Migrating 128 -> 129... 
+2017-05-09 17:41:19,750 INFO  [galaxy.model.migrate.check] 
+2017-05-09 17:41:19,750 INFO  [galaxy.model.migrate.check] Migration script to allow invalidation of job external output metadata temp files
+2017-05-09 17:41:19,750 INFO  [galaxy.model.migrate.check] 
+2017-05-09 17:41:19,750 INFO  [galaxy.model.migrate.check] 
+2017-05-09 17:41:19,750 INFO  [galaxy.model.migrate.check] Migrating 129 -> 130... 
+2017-05-09 17:41:20,242 INFO  [galaxy.model.migrate.check] 
+2017-05-09 17:41:20,243 INFO  [galaxy.model.migrate.check] Migration script to change the value column of user_preference from varchar to text.
+2017-05-09 17:41:20,243 INFO  [galaxy.model.migrate.check] 
+2017-05-09 17:41:20,243 INFO  [galaxy.model.migrate.check] 
+2017-05-09 17:41:20,243 INFO  [galaxy.model.migrate.check] Migrating 130 -> 131... 
+2017-05-09 17:41:20,998 INFO  [galaxy.model.migrate.check] 
+2017-05-09 17:41:20,998 INFO  [galaxy.model.migrate.check] Migration script to support subworkflows and workflow request input parameters
+2017-05-09 17:41:20,998 INFO  [galaxy.model.migrate.check] 
+2017-05-09 17:41:20,998 INFO  [galaxy.model.migrate.check] 
+2017-05-09 17:41:20,998 INFO  [galaxy.model.migrate.check] Migrating 131 -> 132... 
+2017-05-09 17:41:21,054 INFO  [galaxy.model.migrate.check] 
+2017-05-09 17:41:21,055 INFO  [galaxy.model.migrate.check] Migrating 132 -> 133... 
+2017-05-09 17:41:21,452 INFO  [galaxy.model.migrate.check] 
+2017-05-09 17:41:21,452 INFO  [galaxy.model.migrate.check] Add dependencies column to jobs table
+2017-05-09 17:41:21,452 INFO  [galaxy.model.migrate.check] 
+2017-05-09 17:41:21,452 INFO  [galaxy.model.migrate.check] 
+2017-05-09 17:41:21,467 INFO  [galaxy.config] Install database targetting Galaxy's database configuration.
+2017-05-09 17:41:22,106 ERROR [galaxy.visualization.genomes] Error reading twobit.loc: [Errno 2] No such file or directory: '/tmp/tmpBnX6kx/galaxy-dev/tool-data/twobit.loc'
+Traceback (most recent call last):
+  File "/tmp/tmpBnX6kx/galaxy-dev/lib/galaxy/visualization/genomes.py", line 210, in reload_genomes
+    for line in open( os.path.join( self.app.config.tool_data_path, "twobit.loc" ) ):
+IOError: [Errno 2] No such file or directory: '/tmp/tmpBnX6kx/galaxy-dev/tool-data/twobit.loc'
+2017-05-09 17:41:22,117 INFO  [galaxy.jobs] Setting <handlers> default to child with id 'main'
+2017-05-09 17:41:22,135 INFO  [galaxy.tools.toolbox.watcher] Watchdog library unavailable, cannot monitor tools.
+2017-05-09 17:41:22,135 INFO  [galaxy.tools.toolbox.base] Parsing the tool configuration /tmp/tmpBnX6kx/tool_conf.xml
+2017-05-09 17:41:22,146 INFO  [galaxy.tools.toolbox.base] Parsing the tool configuration /tmp/tmpBnX6kx/shed_tools_conf.xml
+2017-05-09 17:41:22,146 INFO  [galaxy.tools.toolbox.base] Parsing the tool configuration /tmp/tmpBnX6kx/empty_tool_conf.xml
+No handlers could be found for logger "galaxy.datatypes.display_applications.application"
+2017-05-09 17:41:22,482 WARNI [galaxy.webhooks] directory not found: /tmp/tmpBnX6kx/galaxy-dev/lib/galaxy/util/../../.././config/plugins/webhooks/demo/config
+2017-05-09 17:41:22,492 INFO  [galaxy.jobs] Handler 'main' will load all configured runner plugins
+2017-05-09 17:41:22,497 INFO  [galaxy.jobs.handler] job handler stop queue started
+2017-05-09 17:41:22,505 INFO  [galaxy.jobs.handler] job handler queue started
+2017-05-09 17:41:23,279 INFO  [galaxy.queue_worker] Binding and starting galaxy control worker for main
+/home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages/sqlalchemy/sql/sqltypes.py:562: SAWarning: Dialect sqlite+pysqlite does *not* support Decimal objects natively, and SQLAlchemy must convert from floating point - rounding errors and other issues may occur. Please consider storing Decimal numbers as strings or integers on this platform for lossless storage.
+  'storage.' % (dialect.name, dialect.driver))
+/home/backdoor/.planemo/gx_venv/lib/python2.7/site-packages/sqlalchemy/sql/default_comparator.py:153: SAWarning: The IN-predicate on "request_type.id" was invoked with an empty sequence. This results in a contradiction, which nonetheless can be expensive to evaluate.  Consider alternative strategies for improved performance.
+  'strategies for improved performance.' % expr)
+W4MClassFilter ( W4MClassFilter ) > Test-1 ... 2017-05-09 17:41:24,463 INFO  [galaxy.tools.actions.upload_common] tool upload1 created job id 1
+2017-05-09 17:41:24,891 INFO  [galaxy.jobs.handler] (1) Job dispatched
+2017-05-09 17:41:25,164 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+2017-05-09 17:41:25,165 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+2017-05-09 17:41:25,198 INFO  [galaxy.jobs.command_factory] Built script [/tmp/tmpBnX6kx/job_working_directory/000/1/tool_script.sh] for tool command [export PATH=$PATH:'/home/backdoor/miniconda2/envs/__samtools@1.3.1/bin' ; python /tmp/tmpBnX6kx/galaxy-dev/tools/data_source/upload.py /tmp/tmpBnX6kx/galaxy-dev /tmp/tmpafqPoR /tmp/tmpFEU_uZ 1:/tmp/tmpBnX6kx/job_working_directory/000/1/dataset_1_files:/tmp/tmpBnX6kx/files/000/dataset_1.dat]
+2017-05-09 17:41:25,365 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+2017-05-09 17:41:25,366 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+2017-05-09 17:41:29,174 INFO  [galaxy.tools.actions.upload_common] tool upload1 created job id 2
+2017-05-09 17:41:30,112 INFO  [galaxy.jobs.handler] (2) Job dispatched
+2017-05-09 17:41:30,372 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+2017-05-09 17:41:30,377 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+2017-05-09 17:41:30,415 INFO  [galaxy.jobs.command_factory] Built script [/tmp/tmpBnX6kx/job_working_directory/000/2/tool_script.sh] for tool command [export PATH=$PATH:'/home/backdoor/miniconda2/envs/__samtools@1.3.1/bin' ; python /tmp/tmpBnX6kx/galaxy-dev/tools/data_source/upload.py /tmp/tmpBnX6kx/galaxy-dev /tmp/tmpafqPoR /tmp/tmp819dTL 2:/tmp/tmpBnX6kx/job_working_directory/000/2/dataset_2_files:/tmp/tmpBnX6kx/files/000/dataset_2.dat]
+2017-05-09 17:41:30,642 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+2017-05-09 17:41:30,642 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+2017-05-09 17:41:34,617 INFO  [galaxy.tools.actions.upload_common] tool upload1 created job id 3
+2017-05-09 17:41:35,397 INFO  [galaxy.jobs.handler] (3) Job dispatched
+2017-05-09 17:41:35,661 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+2017-05-09 17:41:35,661 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+2017-05-09 17:41:35,707 INFO  [galaxy.jobs.command_factory] Built script [/tmp/tmpBnX6kx/job_working_directory/000/3/tool_script.sh] for tool command [export PATH=$PATH:'/home/backdoor/miniconda2/envs/__samtools@1.3.1/bin' ; python /tmp/tmpBnX6kx/galaxy-dev/tools/data_source/upload.py /tmp/tmpBnX6kx/galaxy-dev /tmp/tmpafqPoR /tmp/tmpOXdXDH 3:/tmp/tmpBnX6kx/job_working_directory/000/3/dataset_3_files:/tmp/tmpBnX6kx/files/000/dataset_3.dat]
+2017-05-09 17:41:35,889 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+2017-05-09 17:41:35,890 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+2017-05-09 17:41:39,590 INFO  [galaxy.tools.actions] Handled output named dataMatrix_out for tool W4MClassFilter (102.610 ms)
+2017-05-09 17:41:39,630 INFO  [galaxy.tools.actions] Handled output named sampleMetadata_out for tool W4MClassFilter (39.109 ms)
+2017-05-09 17:41:39,662 INFO  [galaxy.tools.actions] Handled output named variableMetadata_out for tool W4MClassFilter (32.632 ms)
+2017-05-09 17:41:39,694 INFO  [galaxy.tools.actions] Handled output named information for tool W4MClassFilter (31.837 ms)
+2017-05-09 17:41:39,716 INFO  [galaxy.tools.actions] Added output datasets to history (21.785 ms)
+2017-05-09 17:41:39,760 INFO  [galaxy.tools.actions] Verified access to datasets for Job[unflushed,tool_id=W4MClassFilter] (23.849 ms)
+2017-05-09 17:41:39,761 INFO  [galaxy.tools.actions] Setup for job Job[unflushed,tool_id=W4MClassFilter] complete, ready to flush (44.332 ms)
+2017-05-09 17:41:39,795 INFO  [galaxy.tools.actions] Flushed transaction for job Job[id=4,tool_id=W4MClassFilter] (34.570 ms)
+2017-05-09 17:41:40,615 INFO  [galaxy.jobs.handler] (4) Job dispatched
+2017-05-09 17:41:40,918 DEBUG [galaxy.tools.deps] Using dependency r-base version 3.3.1 of type conda
+2017-05-09 17:41:40,918 DEBUG [galaxy.tools.deps] Using dependency r-batch version 1.1_4 of type conda
+2017-05-09 17:41:40,918 DEBUG [galaxy.tools.deps] Using dependency w4mclassfilter version 0.98.1 of type conda
+2017-05-09 17:41:40,919 DEBUG [galaxy.tools.deps] Using dependency r-base version 3.3.1 of type conda
+2017-05-09 17:41:40,919 DEBUG [galaxy.tools.deps] Using dependency r-batch version 1.1_4 of type conda
+2017-05-09 17:41:40,919 DEBUG [galaxy.tools.deps] Using dependency w4mclassfilter version 0.98.1 of type conda
+2017-05-09 17:41:40,951 INFO  [galaxy.jobs.command_factory] Built script [/tmp/tmpBnX6kx/job_working_directory/000/4/tool_script.sh] for tool command [[ "$CONDA_DEFAULT_ENV" = "/home/backdoor/miniconda2/envs/mulled-v1-e6b0d2ef4e5cf48144629c11c5bc66b43fc076b336419c5c00247560d01a3bc4" ] || . /home/backdoor/miniconda2/bin/activate '/home/backdoor/miniconda2/envs/mulled-v1-e6b0d2ef4e5cf48144629c11c5bc66b43fc076b336419c5c00247560d01a3bc4' > conda_activate.log 2>&1 ; [ "$CONDA_DEFAULT_ENV" = "/home/backdoor/miniconda2/envs/mulled-v1-e6b0d2ef4e5cf48144629c11c5bc66b43fc076b336419c5c00247560d01a3bc4" ] || . /home/backdoor/miniconda2/bin/activate '/home/backdoor/miniconda2/envs/mulled-v1-e6b0d2ef4e5cf48144629c11c5bc66b43fc076b336419c5c00247560d01a3bc4' > conda_activate.log 2>&1 ; [ "$CONDA_DEFAULT_ENV" = "/home/backdoor/miniconda2/envs/mulled-v1-e6b0d2ef4e5cf48144629c11c5bc66b43fc076b336419c5c00247560d01a3bc4" ] || . /home/backdoor/miniconda2/bin/activate '/home/backdoor/miniconda2/envs/mulled-v1-e6b0d2ef4e5cf48144629c11c5bc66b43fc076b336419c5c00247560d01a3bc4' > conda_activate.log 2>&1 ; Rscript /home/backdoor/toolshed_test/w4mclassfilter/w4mclassfilter_wrapper.R dataMatrix_in "/tmp/tmpBnX6kx/files/000/dataset_1.dat" sampleMetadata_in "/tmp/tmpBnX6kx/files/000/dataset_2.dat" variableMetadata_in "/tmp/tmpBnX6kx/files/000/dataset_3.dat" sampleclassNames "M" inclusive "TRUE" classnameColumn "gender" samplenameColumn "sampleMetadata" dataMatrix_out "/tmp/tmpBnX6kx/files/000/dataset_4.dat" sampleMetadata_out "/tmp/tmpBnX6kx/files/000/dataset_5.dat" variableMetadata_out "/tmp/tmpBnX6kx/files/000/dataset_6.dat" information "/tmp/tmpBnX6kx/files/000/dataset_7.dat"]
+2017-05-09 17:41:41,340 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+2017-05-09 17:41:41,341 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+ok
+W4MClassFilter ( W4MClassFilter ) > Test-2 ... 2017-05-09 17:41:47,453 INFO  [galaxy.tools.actions.upload_common] tool upload1 created job id 5
+2017-05-09 17:41:47,929 INFO  [galaxy.jobs.handler] (5) Job dispatched
+2017-05-09 17:41:48,185 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+2017-05-09 17:41:48,185 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+2017-05-09 17:41:48,246 INFO  [galaxy.jobs.command_factory] Built script [/tmp/tmpBnX6kx/job_working_directory/000/5/tool_script.sh] for tool command [export PATH=$PATH:'/home/backdoor/miniconda2/envs/__samtools@1.3.1/bin' ; python /tmp/tmpBnX6kx/galaxy-dev/tools/data_source/upload.py /tmp/tmpBnX6kx/galaxy-dev /tmp/tmpafqPoR /tmp/tmpCJ6i2V 8:/tmp/tmpBnX6kx/job_working_directory/000/5/dataset_8_files:/tmp/tmpBnX6kx/files/000/dataset_8.dat]
+2017-05-09 17:41:48,468 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+2017-05-09 17:41:48,469 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+2017-05-09 17:41:52,575 INFO  [galaxy.tools.actions.upload_common] tool upload1 created job id 6
+2017-05-09 17:41:53,192 INFO  [galaxy.jobs.handler] (6) Job dispatched
+2017-05-09 17:41:53,442 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+2017-05-09 17:41:53,444 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+2017-05-09 17:41:53,484 INFO  [galaxy.jobs.command_factory] Built script [/tmp/tmpBnX6kx/job_working_directory/000/6/tool_script.sh] for tool command [export PATH=$PATH:'/home/backdoor/miniconda2/envs/__samtools@1.3.1/bin' ; python /tmp/tmpBnX6kx/galaxy-dev/tools/data_source/upload.py /tmp/tmpBnX6kx/galaxy-dev /tmp/tmpafqPoR /tmp/tmpTkRIU7 9:/tmp/tmpBnX6kx/job_working_directory/000/6/dataset_9_files:/tmp/tmpBnX6kx/files/000/dataset_9.dat]
+2017-05-09 17:41:53,711 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+2017-05-09 17:41:53,712 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+2017-05-09 17:41:57,685 INFO  [galaxy.tools.actions.upload_common] tool upload1 created job id 7
+2017-05-09 17:41:58,415 INFO  [galaxy.jobs.handler] (7) Job dispatched
+2017-05-09 17:41:58,668 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+2017-05-09 17:41:58,669 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+2017-05-09 17:41:58,718 INFO  [galaxy.jobs.command_factory] Built script [/tmp/tmpBnX6kx/job_working_directory/000/7/tool_script.sh] for tool command [export PATH=$PATH:'/home/backdoor/miniconda2/envs/__samtools@1.3.1/bin' ; python /tmp/tmpBnX6kx/galaxy-dev/tools/data_source/upload.py /tmp/tmpBnX6kx/galaxy-dev /tmp/tmpafqPoR /tmp/tmppTa3ww 10:/tmp/tmpBnX6kx/job_working_directory/000/7/dataset_10_files:/tmp/tmpBnX6kx/files/000/dataset_10.dat]
+2017-05-09 17:41:58,874 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+2017-05-09 17:41:58,874 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+2017-05-09 17:42:02,544 INFO  [galaxy.tools.actions] Handled output named dataMatrix_out for tool W4MClassFilter (54.150 ms)
+2017-05-09 17:42:02,576 INFO  [galaxy.tools.actions] Handled output named sampleMetadata_out for tool W4MClassFilter (32.411 ms)
+2017-05-09 17:42:02,613 INFO  [galaxy.tools.actions] Handled output named variableMetadata_out for tool W4MClassFilter (36.563 ms)
+2017-05-09 17:42:02,660 INFO  [galaxy.tools.actions] Handled output named information for tool W4MClassFilter (46.442 ms)
+2017-05-09 17:42:02,682 INFO  [galaxy.tools.actions] Added output datasets to history (21.663 ms)
+2017-05-09 17:42:02,732 INFO  [galaxy.tools.actions] Verified access to datasets for Job[unflushed,tool_id=W4MClassFilter] (25.405 ms)
+2017-05-09 17:42:02,732 INFO  [galaxy.tools.actions] Setup for job Job[unflushed,tool_id=W4MClassFilter] complete, ready to flush (50.729 ms)
+2017-05-09 17:42:02,766 INFO  [galaxy.tools.actions] Flushed transaction for job Job[id=8,tool_id=W4MClassFilter] (33.131 ms)
+2017-05-09 17:42:03,604 INFO  [galaxy.jobs.handler] (8) Job dispatched
+2017-05-09 17:42:03,920 DEBUG [galaxy.tools.deps] Using dependency r-base version 3.3.1 of type conda
+2017-05-09 17:42:03,921 DEBUG [galaxy.tools.deps] Using dependency r-batch version 1.1_4 of type conda
+2017-05-09 17:42:03,921 DEBUG [galaxy.tools.deps] Using dependency w4mclassfilter version 0.98.1 of type conda
+2017-05-09 17:42:03,921 DEBUG [galaxy.tools.deps] Using dependency r-base version 3.3.1 of type conda
+2017-05-09 17:42:03,921 DEBUG [galaxy.tools.deps] Using dependency r-batch version 1.1_4 of type conda
+2017-05-09 17:42:03,921 DEBUG [galaxy.tools.deps] Using dependency w4mclassfilter version 0.98.1 of type conda
+2017-05-09 17:42:03,960 INFO  [galaxy.jobs.command_factory] Built script [/tmp/tmpBnX6kx/job_working_directory/000/8/tool_script.sh] for tool command [[ "$CONDA_DEFAULT_ENV" = "/home/backdoor/miniconda2/envs/mulled-v1-e6b0d2ef4e5cf48144629c11c5bc66b43fc076b336419c5c00247560d01a3bc4" ] || . /home/backdoor/miniconda2/bin/activate '/home/backdoor/miniconda2/envs/mulled-v1-e6b0d2ef4e5cf48144629c11c5bc66b43fc076b336419c5c00247560d01a3bc4' > conda_activate.log 2>&1 ; [ "$CONDA_DEFAULT_ENV" = "/home/backdoor/miniconda2/envs/mulled-v1-e6b0d2ef4e5cf48144629c11c5bc66b43fc076b336419c5c00247560d01a3bc4" ] || . /home/backdoor/miniconda2/bin/activate '/home/backdoor/miniconda2/envs/mulled-v1-e6b0d2ef4e5cf48144629c11c5bc66b43fc076b336419c5c00247560d01a3bc4' > conda_activate.log 2>&1 ; [ "$CONDA_DEFAULT_ENV" = "/home/backdoor/miniconda2/envs/mulled-v1-e6b0d2ef4e5cf48144629c11c5bc66b43fc076b336419c5c00247560d01a3bc4" ] || . /home/backdoor/miniconda2/bin/activate '/home/backdoor/miniconda2/envs/mulled-v1-e6b0d2ef4e5cf48144629c11c5bc66b43fc076b336419c5c00247560d01a3bc4' > conda_activate.log 2>&1 ; Rscript /home/backdoor/toolshed_test/w4mclassfilter/w4mclassfilter_wrapper.R dataMatrix_in "/tmp/tmpBnX6kx/files/000/dataset_8.dat" sampleMetadata_in "/tmp/tmpBnX6kx/files/000/dataset_9.dat" variableMetadata_in "/tmp/tmpBnX6kx/files/000/dataset_10.dat" sampleclassNames "M" inclusive "TRUE" classnameColumn "gender" samplenameColumn "sampleMetadata" dataMatrix_out "/tmp/tmpBnX6kx/files/000/dataset_11.dat" sampleMetadata_out "/tmp/tmpBnX6kx/files/000/dataset_12.dat" variableMetadata_out "/tmp/tmpBnX6kx/files/000/dataset_13.dat" information "/tmp/tmpBnX6kx/files/000/dataset_14.dat"]
+2017-05-09 17:42:04,366 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+2017-05-09 17:42:04,366 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+ok
+W4MClassFilter ( W4MClassFilter ) > Test-3 ... 2017-05-09 17:42:10,658 INFO  [galaxy.tools.actions.upload_common] tool upload1 created job id 9
+2017-05-09 17:42:10,906 INFO  [galaxy.jobs.handler] (9) Job dispatched
+2017-05-09 17:42:11,150 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+2017-05-09 17:42:11,151 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+2017-05-09 17:42:11,233 INFO  [galaxy.jobs.command_factory] Built script [/tmp/tmpBnX6kx/job_working_directory/000/9/tool_script.sh] for tool command [export PATH=$PATH:'/home/backdoor/miniconda2/envs/__samtools@1.3.1/bin' ; python /tmp/tmpBnX6kx/galaxy-dev/tools/data_source/upload.py /tmp/tmpBnX6kx/galaxy-dev /tmp/tmpafqPoR /tmp/tmp0F7oAs 15:/tmp/tmpBnX6kx/job_working_directory/000/9/dataset_15_files:/tmp/tmpBnX6kx/files/000/dataset_15.dat]
+2017-05-09 17:42:11,471 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+2017-05-09 17:42:11,472 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+2017-05-09 17:42:15,491 INFO  [galaxy.tools.actions.upload_common] tool upload1 created job id 10
+2017-05-09 17:42:16,194 INFO  [galaxy.jobs.handler] (10) Job dispatched
+2017-05-09 17:42:16,447 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+2017-05-09 17:42:16,448 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+2017-05-09 17:42:16,485 INFO  [galaxy.jobs.command_factory] Built script [/tmp/tmpBnX6kx/job_working_directory/000/10/tool_script.sh] for tool command [export PATH=$PATH:'/home/backdoor/miniconda2/envs/__samtools@1.3.1/bin' ; python /tmp/tmpBnX6kx/galaxy-dev/tools/data_source/upload.py /tmp/tmpBnX6kx/galaxy-dev /tmp/tmpafqPoR /tmp/tmpmkABaW 16:/tmp/tmpBnX6kx/job_working_directory/000/10/dataset_16_files:/tmp/tmpBnX6kx/files/000/dataset_16.dat]
+2017-05-09 17:42:16,649 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+2017-05-09 17:42:16,650 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+2017-05-09 17:42:20,509 INFO  [galaxy.tools.actions.upload_common] tool upload1 created job id 11
+2017-05-09 17:42:21,426 INFO  [galaxy.jobs.handler] (11) Job dispatched
+2017-05-09 17:42:21,680 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+2017-05-09 17:42:21,681 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+2017-05-09 17:42:21,764 INFO  [galaxy.jobs.command_factory] Built script [/tmp/tmpBnX6kx/job_working_directory/000/11/tool_script.sh] for tool command [export PATH=$PATH:'/home/backdoor/miniconda2/envs/__samtools@1.3.1/bin' ; python /tmp/tmpBnX6kx/galaxy-dev/tools/data_source/upload.py /tmp/tmpBnX6kx/galaxy-dev /tmp/tmpafqPoR /tmp/tmpfEj6tV 17:/tmp/tmpBnX6kx/job_working_directory/000/11/dataset_17_files:/tmp/tmpBnX6kx/files/000/dataset_17.dat]
+2017-05-09 17:42:21,991 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+2017-05-09 17:42:21,991 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+2017-05-09 17:42:25,709 INFO  [galaxy.tools.actions] Handled output named dataMatrix_out for tool W4MClassFilter (34.677 ms)
+2017-05-09 17:42:25,751 INFO  [galaxy.tools.actions] Handled output named sampleMetadata_out for tool W4MClassFilter (41.778 ms)
+2017-05-09 17:42:25,784 INFO  [galaxy.tools.actions] Handled output named variableMetadata_out for tool W4MClassFilter (32.888 ms)
+2017-05-09 17:42:25,815 INFO  [galaxy.tools.actions] Handled output named information for tool W4MClassFilter (30.527 ms)
+2017-05-09 17:42:25,838 INFO  [galaxy.tools.actions] Added output datasets to history (22.886 ms)
+2017-05-09 17:42:25,886 INFO  [galaxy.tools.actions] Verified access to datasets for Job[unflushed,tool_id=W4MClassFilter] (26.826 ms)
+2017-05-09 17:42:25,887 INFO  [galaxy.tools.actions] Setup for job Job[unflushed,tool_id=W4MClassFilter] complete, ready to flush (48.981 ms)
+2017-05-09 17:42:25,936 INFO  [galaxy.tools.actions] Flushed transaction for job Job[id=12,tool_id=W4MClassFilter] (48.570 ms)
+2017-05-09 17:42:26,617 INFO  [galaxy.jobs.handler] (12) Job dispatched
+2017-05-09 17:42:26,893 DEBUG [galaxy.tools.deps] Using dependency r-base version 3.3.1 of type conda
+2017-05-09 17:42:26,900 DEBUG [galaxy.tools.deps] Using dependency r-batch version 1.1_4 of type conda
+2017-05-09 17:42:26,902 DEBUG [galaxy.tools.deps] Using dependency w4mclassfilter version 0.98.1 of type conda
+2017-05-09 17:42:26,903 DEBUG [galaxy.tools.deps] Using dependency r-base version 3.3.1 of type conda
+2017-05-09 17:42:26,903 DEBUG [galaxy.tools.deps] Using dependency r-batch version 1.1_4 of type conda
+2017-05-09 17:42:26,903 DEBUG [galaxy.tools.deps] Using dependency w4mclassfilter version 0.98.1 of type conda
+2017-05-09 17:42:26,955 INFO  [galaxy.jobs.command_factory] Built script [/tmp/tmpBnX6kx/job_working_directory/000/12/tool_script.sh] for tool command [[ "$CONDA_DEFAULT_ENV" = "/home/backdoor/miniconda2/envs/mulled-v1-e6b0d2ef4e5cf48144629c11c5bc66b43fc076b336419c5c00247560d01a3bc4" ] || . /home/backdoor/miniconda2/bin/activate '/home/backdoor/miniconda2/envs/mulled-v1-e6b0d2ef4e5cf48144629c11c5bc66b43fc076b336419c5c00247560d01a3bc4' > conda_activate.log 2>&1 ; [ "$CONDA_DEFAULT_ENV" = "/home/backdoor/miniconda2/envs/mulled-v1-e6b0d2ef4e5cf48144629c11c5bc66b43fc076b336419c5c00247560d01a3bc4" ] || . /home/backdoor/miniconda2/bin/activate '/home/backdoor/miniconda2/envs/mulled-v1-e6b0d2ef4e5cf48144629c11c5bc66b43fc076b336419c5c00247560d01a3bc4' > conda_activate.log 2>&1 ; [ "$CONDA_DEFAULT_ENV" = "/home/backdoor/miniconda2/envs/mulled-v1-e6b0d2ef4e5cf48144629c11c5bc66b43fc076b336419c5c00247560d01a3bc4" ] || . /home/backdoor/miniconda2/bin/activate '/home/backdoor/miniconda2/envs/mulled-v1-e6b0d2ef4e5cf48144629c11c5bc66b43fc076b336419c5c00247560d01a3bc4' > conda_activate.log 2>&1 ; Rscript /home/backdoor/toolshed_test/w4mclassfilter/w4mclassfilter_wrapper.R dataMatrix_in "/tmp/tmpBnX6kx/files/000/dataset_15.dat" sampleMetadata_in "/tmp/tmpBnX6kx/files/000/dataset_16.dat" variableMetadata_in "/tmp/tmpBnX6kx/files/000/dataset_17.dat" sampleclassNames "M" inclusive "TRUE" classnameColumn "gender" samplenameColumn "sampleMetadata" dataMatrix_out "/tmp/tmpBnX6kx/files/000/dataset_18.dat" sampleMetadata_out "/tmp/tmpBnX6kx/files/000/dataset_19.dat" variableMetadata_out "/tmp/tmpBnX6kx/files/000/dataset_20.dat" information "/tmp/tmpBnX6kx/files/000/dataset_21.dat"]
+2017-05-09 17:42:27,374 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+2017-05-09 17:42:27,375 DEBUG [galaxy.tools.deps] Using dependency samtools version None of type conda
+ok
+
+----------------------------------------------------------------------
+XML: /tmp/tmpBnX6kx/xunit.xml
+----------------------------------------------------------------------
+Ran 3 tests in 69.356s
+
+OK
+2017-05-09 17:42:33,110 INFO  [test_driver] Shutting down
+2017-05-09 17:42:33,110 INFO  [test_driver] Shutting down embedded galaxy web server
+2017-05-09 17:42:33,112 INFO  [test_driver] Embedded web server galaxy stopped
+2017-05-09 17:42:33,112 INFO  [test_driver] Stopping application galaxy
+2017-05-09 17:42:33,112 INFO  [galaxy.jobs.handler] sending stop signal to worker thread
+2017-05-09 17:42:33,112 INFO  [galaxy.jobs.handler] job handler queue stopped
+2017-05-09 17:42:33,112 INFO  [galaxy.jobs.runners] TaskRunner: Sending stop signal to 2 worker threads
+2017-05-09 17:42:33,112 INFO  [galaxy.jobs.runners] LocalRunner: Sending stop signal to 4 worker threads
+2017-05-09 17:42:33,112 INFO  [galaxy.jobs.handler] sending stop signal to worker thread
+2017-05-09 17:42:33,112 INFO  [galaxy.jobs.handler] job handler stop queue stopped
+2017-05-09 17:42:33,113 INFO  [test_driver] Application galaxy stopped.
+2017-05-09 17:42:34,087 INFO  [galaxy.jobs.handler] sending stop signal to worker thread
+2017-05-09 17:42:34,088 INFO  [galaxy.jobs.handler] job handler queue stopped
+2017-05-09 17:42:34,088 INFO  [galaxy.jobs.runners] TaskRunner: Sending stop signal to 2 worker threads
+2017-05-09 17:42:34,089 INFO  [galaxy.jobs.runners] LocalRunner: Sending stop signal to 4 worker threads
+2017-05-09 17:42:34,089 INFO  [galaxy.jobs.handler] sending stop signal to worker thread
+2017-05-09 17:42:34,089 INFO  [galaxy.jobs.handler] job handler stop queue stopped
+Testing complete. HTML report is in "/home/backdoor/toolshed_test/w4mclassfilter/tool_test_output.html".
+All 3 test(s) executed passed.
+W4MClassFilter[0]: passed
+W4MClassFilter[1]: passed
+W4MClassFilter[2]: passed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/w4mclassfilter.xml	Wed May 10 11:28:01 2017 -0400
@@ -0,0 +1,374 @@
+<tool id="w4mclassfilter" name="Sample_Subset" version="0.98.1">
+  <description>Filter W4M data by sample class</description>
+
+  <requirements>
+    <requirement type="package" version="3.3.1">r-base</requirement>
+    <requirement type="package" version="1.1_4">r-batch</requirement>
+    <requirement type="package" version="0.98.1">w4mclassfilter</requirement>
+  </requirements>
+
+  <stdio>
+    <exit_code range="1:" level="fatal" />
+  </stdio>
+
+
+  <command detect_errors="aggressive"><![CDATA[
+  Rscript $__tool_directory__/w4mclassfilter_wrapper.R
+  dataMatrix_in "$dataMatrix_in"
+  sampleMetadata_in "$sampleMetadata_in"
+  variableMetadata_in "$variableMetadata_in"
+  sampleclassNames "$sampleclassNames"
+  inclusive "$inclusive"
+  classnameColumn "$classnameColumn"
+  samplenameColumn "$samplenameColumn"
+  dataMatrix_out "$dataMatrix_out"
+  sampleMetadata_out "$sampleMetadata_out"
+  variableMetadata_out "$variableMetadata_out"
+  ]]></command>
+
+  <inputs>
+    <param name="dataMatrix_in" label="Data matrix file" type="data" format="tabular" help="variable x sample, decimal: '.', missing: NA, mode: numerical, separator: tab" />
+    <param name="sampleMetadata_in" label="Sample metadata file" type="data" format="tabular" help="sample x metadata columns, separator: tab" />
+    <param name="variableMetadata_in" label="Variable metadata file" type="data" format="tabular" help="variable x metadata columns, separator: tab" />
+    <param name="sampleclassNames" label="Names of sample classes" type="text" value = "" help="comma-separated names of sample classes to filter in or out; defaults to no names" />
+    <param name="inclusive" label="Include named classes" type="select" help="filter-in - include only the named sample classes; filter-out (the default) - exclude only the named sample classes">
+      <option value="TRUE">filter-in</option>
+      <option value="FALSE" selected="true">filter-out</option>
+    </param>
+    <param name="classnameColumn" label="Column that names the sample-class" type="text" value = "class" help="name of the column in sample metadata that has the values to be tested against the 'classes' input parameter - defaults to 'class'" />
+    <param name="samplenameColumn" label="Column that names the sample" type="text" value = "sampleMetadata" help="name of the column in sample metadata that has the name of the sample - defaults to 'sampleMetadata'" />
+  </inputs>
+  <outputs>
+    <data name="dataMatrix_out" label="${tool.name}_${dataMatrix_in.name}" format="tabular" ></data>
+    <data name="sampleMetadata_out" label="${tool.name}_${sampleMetadata_in.name}" format="tabular" ></data>
+    <data name="variableMetadata_out" label="${tool.name}_${variableMetadata_in.name}" format="tabular" ></data>
+  </outputs>
+
+  <tests>
+    <test>
+      <param name="dataMatrix_in" value="input_dataMatrix.tsv"/>
+      <param name="sampleMetadata_in" value="input_sampleMetadata.tsv"/>
+      <param name="variableMetadata_in" value="input_variableMetadata.tsv"/>
+      <param name="classnameColumn" value="gender"/>
+      <param name="sampleclassNames" value="M"/>
+      <param name="samplenameColumn" value="sampleMetadata"/>
+      <param name="inclusive" value="filter-in"/>
+      <output name="dataMatrix_out">
+        <assert_contents>
+          <not_has_text text="HU_028" />
+          <not_has_text text="HU_051" />
+          <not_has_text text="HU_060" />
+          <not_has_text text="HU_110" />
+          <not_has_text text="HU_149" />
+          <not_has_text text="HU_152" />
+          <not_has_text text="HU_175" />
+          <not_has_text text="HU_178" />
+          <not_has_text text="HU_185" />
+          <not_has_text text="HU_204" />
+          <not_has_text text="HU_208" />
+          <has_text     text="HU_017" />
+          <has_text     text="HU_034" />
+          <has_text     text="HU_078" />
+          <has_text     text="HU_091" />
+          <has_text     text="HU_093" />
+          <has_text     text="HU_099" />
+          <has_text     text="HU_130" />
+          <has_text     text="HU_134" />
+          <has_text     text="HU_138" />
+          <has_text     text="HMDB03193" />
+          <not_has_text text="HMDB00822" />
+          <has_text     text="HMDB01101" />
+          <has_text     text="HMDB01101.1" />
+          <has_text     text="HMDB10348" />
+          <has_text     text="HMDB59717" />
+          <has_text     text="HMDB13189" />
+          <has_text     text="HMDB00299" />
+          <has_text     text="HMDB00191" />
+          <has_text     text="HMDB00518" />
+          <has_text     text="HMDB00715" />
+          <has_text     text="HMDB01032" />
+          <has_text     text="HMDB00208" />
+          <has_text     text="HMDB04824" />
+          <has_text     text="HMDB00512" />
+          <has_text     text="HMDB00251" />
+        </assert_contents>
+      </output>
+    </test>
+    <test>
+      <param name="dataMatrix_in" value="input_dataMatrix.tsv"/>
+      <param name="sampleMetadata_in" value="input_sampleMetadata.tsv"/>
+      <param name="variableMetadata_in" value="input_variableMetadata.tsv"/>
+      <param name="classnameColumn" value="gender"/>
+      <param name="sampleclassNames" value="M"/>
+      <param name="samplenameColumn" value="sampleMetadata"/>
+      <param name="inclusive" value="filter-in"/>
+      <output name="sampleMetadata_out">
+        <assert_contents>
+          <not_has_text text="HU_028" />
+          <not_has_text text="HU_051" />
+          <not_has_text text="HU_060" />
+          <not_has_text text="HU_110" />
+          <not_has_text text="HU_149" />
+          <not_has_text text="HU_152" />
+          <not_has_text text="HU_175" />
+          <not_has_text text="HU_178" />
+          <not_has_text text="HU_185" />
+          <not_has_text text="HU_204" />
+          <not_has_text text="HU_208" />
+          <has_text     text="HU_017" />
+          <has_text     text="HU_034" />
+          <has_text     text="HU_078" />
+          <has_text     text="HU_091" />
+          <has_text     text="HU_093" />
+          <has_text     text="HU_099" />
+          <has_text     text="HU_130" />
+          <has_text     text="HU_134" />
+          <has_text     text="HU_138" />
+        </assert_contents>
+      </output>
+    </test>
+    <test>
+      <param name="dataMatrix_in" value="input_dataMatrix.tsv"/>
+      <param name="sampleMetadata_in" value="input_sampleMetadata.tsv"/>
+      <param name="variableMetadata_in" value="input_variableMetadata.tsv"/>
+      <param name="classnameColumn" value="gender"/>
+      <param name="sampleclassNames" value="M"/>
+      <param name="samplenameColumn" value="sampleMetadata"/>
+      <param name="inclusive" value="filter-in"/>
+      <output name="variableMetadata_out">
+        <assert_contents>
+          <has_text     text="HMDB03193" />
+          <not_has_text text="HMDB00822" />
+          <has_text     text="HMDB01101" />
+          <has_text     text="HMDB01101.1" />
+          <has_text     text="HMDB10348" />
+          <has_text     text="HMDB59717" />
+          <has_text     text="HMDB13189" />
+          <has_text     text="HMDB00299" />
+          <has_text     text="HMDB00191" />
+          <has_text     text="HMDB00518" />
+          <has_text     text="HMDB00715" />
+          <has_text     text="HMDB01032" />
+          <has_text     text="HMDB00208" />
+          <has_text     text="HMDB04824" />
+          <has_text     text="HMDB00512" />
+          <has_text     text="HMDB00251" />
+        </assert_contents>
+      </output>
+    </test>
+  </tests>
+
+
+
+	<help>
+		<![CDATA[
+
+.. class:: infomark
+
+**Author**	Arthur Eschenlauer (University of Minnesota, esch0041@umn.edu)
+
+--------------------------------------------------------------------------
+
+.. class:: infomark
+
+**R package**
+
+The *w4mclassfilter* package is available from the Hegeman lab github repository (https://github.com/HegemanLab/w4mclassfilter/releases).
+
+-----------------------------------------------------------------------------------------------------------------------------------------
+
+.. class:: infomark
+
+**Tool updates**
+
+See the **NEWS** section at the bottom of this page
+
+---------------------------------------------------
+
+==============================================
+Filter Workflow4Metabolomics data matrix files
+==============================================
+
+-----------
+Description
+-----------
+
+Filter a set of retention-corrected W4M files (dataMatrix, sampleMetadata, variableMetadata) by sample-class
+
+-----------------
+Workflow Position
+-----------------
+
+  - Upstream tool category: Preprocessing
+  - Downstream tool categories: Normalisation, Statistical Analysis, Quality Control
+
+----------
+Motivation
+----------
+
+GC-MS1 and LC-MS1 experiments seek to resolve chemicals as features that have distinct chromatographic behavior and (after ionization) mass-to-charge ratio. 
+Data for a sample are collected as MS intensities, each of which is associated with a position on a 2D plane with dimensions of m/z ratio and chromatographic retention time.
+Ideally, features would be sufficiently reproducible from sample-run to sample-run to identify features that are commmon among samples and those that differ. 
+However, the chromatographic retention time for a chemical can vary from one run to another.
+In the Workflow4Metabolomics (W4M, [Giacomoni *et al.*, 2014]) "flavor" of Galaxy, the XCMS [Smith *et al.*, 2006] preprocessing tools provide for "retention time correction" to align features among samples, but features may be better aligned if pooled samples and blanks are included.
+
+Multivariate statistical techniques may be used to discover clusters of similar samples, and sometimes it is desirable to apply clustering iteratively to smaller and smaller subsets of samples until observable separation of clusters is no longer significant.
+Once feature-alignment has been achieved among samples in GC-MS and LC-MS datasets, however, the presence of pools and blanks may confound identification and separation of clusters.
+Multivariate statistical algorithms also may be impacted by missing values or dimensions that have zero variance.
+
+The w4mclassfilter tool provides a way to choose subsets of samples for further analysis.
+The tool takes as input the data matrix, sample metadata, and variable metadata Galaxy datasets produced by W4M and produces the same trio of datasets with data only for the selected samples.
+The tool uses a "sample-class" column in the sample metadata as the basis for including or eliminating samples for further analysis.
+Class-values to be considered are provided by the user as a comma-separated list.
+The user also provides an indication whether the list specifies classes to be included in further analysis ("filter-in") or rather to be excluded from it ("filter-out").
+Next, missing and negative intensites for features of the remaining samples are imputed to zero.
+Finally, samples or features with zero variance are eliminated.
+
+
+-----------
+Input files
+-----------
+
++---------------------------+------------+
+| File                      |   Format   |
++===========================+============+
+|     Data matrix           |   tabular  |
++---------------------------+------------+
+|     Sample metadata       |   tabular  |
++---------------------------+------------+
+|     Variable metadata     |   tabular  |
++---------------------------+------------+
+
+
+----------
+Parameters
+----------
+
+Data matrix file
+	| variable x sample **dataMatrix** (tabular separated values) file of the numeric data matrix, with . as decimal, and NA for missing values; the table must not contain metadata apart from row and column names; the row and column names must be identical to the rownames of the sample and variable metadata, respectively (see below)
+	|
+
+Sample metadata file
+	| sample x metadata **sampleMetadata** (tabular separated values) file of the numeric and/or character sample metadata, with . as decimal and NA for missing values
+	|
+
+Variable metadata file
+	| variable x metadata **variableMetadata** (tabular separated values) file of the numeric and/or character variable metadata, with . as decimal and NA for missing values
+	|
+
+Names of sample classes (default = no names)
+	| comma-separated names of sample classes to include or exclude
+	|
+
+Include named classes (default = filter-out)
+	| *filter-in* - include only the named sample classes
+	| *filter-out* - exclude only the named sample classes
+	|
+
+
+Column that names the sample-class (default = 'class')
+	| name of the column in sample metadata that has the values to be tested against the 'classes' input parameter
+	|
+
+Column that names the sample (default = 'sampleMetadata')
+	| name of the column in sample metadata that has the name of the sample
+	|
+
+
+------------
+Output files
+------------
+
+
+sampleMetadata
+	| (tabular separated values) file identical to the **sampleMetadata** file given as an input argument, excepting lacking rows for samples (xC-MS features) that have been filtered out (by the sample-class filter or because of zero variance)
+	|
+
+variableMetadata
+	| (tabular separated values) file identical to the **variableMetadata** file given as an input argument, excepting lacking rows for variables (xC-MS features) that have been filtered out (because of zero variance)
+	|
+
+dataMatrix
+	| (tabular separated values) file identical to the **dataMatrix** file given as an input argument, excepting lacking rows for variables (xC-MS features) that have been filtered out (because of zero variance) and columns that have been filtered out (by the sample-class filter or because of zero variance)
+	|
+
+
+---------------
+Working example
+---------------
+
+.. class:: infomark
+
+**Input files**
+
++-------------------+--------------------------------------------------------------------------------------------------------------+
+| Input File        | Download from URL                                                                                            |
++===================+==============================================================================================================+
+| Data matrix       | https://raw.githubusercontent.com/HegemanLab/w4mclassfilter/master/tests/testthat/input_dataMatrix.tsv       |
++-------------------+--------------------------------------------------------------------------------------------------------------+
+| Sample metadata   | https://raw.githubusercontent.com/HegemanLab/w4mclassfilter/master/tests/testthat/input_sampleMetadata.tsv   |
++-------------------+--------------------------------------------------------------------------------------------------------------+
+| Variable metadata | https://raw.githubusercontent.com/HegemanLab/w4mclassfilter/master/tests/testthat/input_variableMetadata.tsv |
++-------------------+--------------------------------------------------------------------------------------------------------------+
+
+.. class:: infomark
+
+**Other input parameters**
+
++------------------------------------+-----------------+
+| Input Parameter                    | Value           |
++====================================+=================+
+| Names of sample classes            | M               |
++------------------------------------+-----------------+
+| Include named classes              | filter-in       |
++------------------------------------+-----------------+
+| Column that names the sample-class | gender          |
++------------------------------------+-----------------+
+| Column that names the sample       | sampleMetadata  |
++------------------------------------+-----------------+
+
+.. class:: infomark
+
+**Expected outputs**
+
++-------------------+-----------------------------------------------------------------------------------------------------------------+
+| Expected Output   | Download from URL                                                                                               |
++===================+=================================================================================================================+
+| Data matrix       | https://raw.githubusercontent.com/HegemanLab/w4mclassfilter/master/tests/testthat/expected_dataMatrix.tsv       |
++-------------------+-----------------------------------------------------------------------------------------------------------------+
+| Sample metadata   | https://raw.githubusercontent.com/HegemanLab/w4mclassfilter/master/tests/testthat/expected_sampleMetadata.tsv   |
++-------------------+-----------------------------------------------------------------------------------------------------------------+
+| Variable metadata | https://raw.githubusercontent.com/HegemanLab/w4mclassfilter/master/tests/testthat/expected_variableMetadata.tsv |
++-------------------+-----------------------------------------------------------------------------------------------------------------+
+
+
+-----------------------------------------------------------------------------
+
+----
+NEWS
+----
+
+CHANGES IN VERSION 0.98.1
+=========================
+
+NEW FEATURES
+
+First release - Wrap the w4mclassfilter R package that implements filtering of W4M data matrix, variable metadata, and sample metadata by class of sample.
+
+*dataMatrix* *is* modified by the tool, so it *does* appear as an output file
+*sampleMetadata* *is* modified by the tool, so it *does* appear as an output file
+*variableMetadata* *is* modified by the tool, so it *does* appear as an output file
+
+INTERNAL MODIFICATIONS
+
+none
+
+    ]]>
+  </help>
+  <citations>
+    <citation type="doi">10.1021/ac051437y</citation>
+    <citation type="doi">10.1093/bioinformatics/btu813</citation>
+  </citations>
+</tool>
+<!-- vim: noet sw=4 ts=4 :
+-->
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/w4mclassfilter_wrapper.R	Wed May 10 11:28:01 2017 -0400
@@ -0,0 +1,144 @@
+#!/usr/bin/env Rscript
+
+library(batch) ## parseCommandArgs
+
+########
+# MAIN #
+########
+
+argVc <- unlist(parseCommandArgs(evaluate=FALSE))
+
+##------------------------------
+## Initializing
+##------------------------------
+
+## options
+##--------
+
+strAsFacL <- options()$stringsAsFactors
+options(stringsAsFactors = FALSE)
+
+## libraries
+##----------
+
+suppressMessages(library(w4mclassfilter))
+
+if(packageVersion("w4mclassfilter") < "0.98.0")
+    stop("Please use 'w4mclassfilter' versions of 0.98.0 and above")
+
+## constants
+##----------
+
+modNamC <- "w4mclassfilter" ## module name
+
+topEnvC <- environment()
+flgC <- "\n"
+
+## functions
+##----------
+
+flgF <- function(tesC,
+                 envC = topEnvC,
+                 txtC = NA) { ## management of warning and error messages
+
+    tesL <- eval(parse(text = tesC), envir = envC)
+
+    if(!tesL) {
+
+        #sink(NULL)
+        stpTxtC <- ifelse(is.na(txtC),
+                          paste0(tesC, " is FALSE"),
+                          txtC)
+
+        stop(stpTxtC,
+             call. = FALSE)
+
+    }
+
+} ## flgF
+
+
+## log file
+##---------
+
+my_print <- function(x, ...) { cat(c(x, ...))}
+
+my_print("\nStart of the '", modNamC, "' Galaxy module call: ",
+    format(Sys.time(), "%a %d %b %Y %X"), "\n", sep="")
+
+## arguments
+##----------
+
+# files
+
+dataMatrix_in <- as.character(argVc["dataMatrix_in"])
+dataMatrix_out <- as.character(argVc["dataMatrix_out"])
+
+sampleMetadata_in <- as.character(argVc["sampleMetadata_in"])
+sampleMetadata_out <- as.character(argVc["sampleMetadata_out"])
+
+variableMetadata_in <- as.character(argVc["variableMetadata_in"])
+variableMetadata_out <- as.character(argVc["variableMetadata_out"])
+
+# other parameters
+
+sampleclassNames <- as.character(argVc["sampleclassNames"])
+# if (sampleclassNames == "NONE_SPECIFIED") {
+#     sampleclassNames <- as.character(c())
+# 
+# } else {
+#     sampleclassNames <- strsplit(x = sampleclassNames, split = ",", fixed = TRUE)[[1]]
+# }
+sampleclassNames <- strsplit(x = sampleclassNames, split = ",", fixed = TRUE)[[1]]
+inclusive <- as.logical(argVc["inclusive"])
+# print(sprintf("inclusive = '%s'", as.character(inclusive)))
+classnameColumn <- as.character(argVc["classnameColumn"])
+samplenameColumn <- as.character(argVc["samplenameColumn"])
+
+##------------------------------
+## Computation
+##------------------------------
+
+result <- w4m_filter_by_sample_class(
+  dataMatrix_in        = dataMatrix_in
+, sampleMetadata_in    = sampleMetadata_in
+, variableMetadata_in  = variableMetadata_in
+, dataMatrix_out       = dataMatrix_out
+, sampleMetadata_out   = sampleMetadata_out
+, variableMetadata_out = variableMetadata_out
+, classes              = sampleclassNames
+, include              = inclusive
+, class_column         = classnameColumn
+, samplename_column    = samplenameColumn
+, failure_action       = my_print
+)
+
+my_print("\nResult of '", modNamC, "' Galaxy module call to 'w4mclassfilter::w4m_filter_by_sample_class' R function: ",
+    as.character(result), "\n", sep = "")
+
+##--------
+## Closing
+##--------
+
+my_print("\nEnd of '", modNamC, "' Galaxy module call: ",
+    as.character(Sys.time()), "\n", sep = "")
+
+#sink()
+
+if (!file.exists(dataMatrix_out)) {
+  print(sprintf("ERROR %s::w4m_filter_by_sample_class - file '%s' was not created", modNamC, dataMatrix_out))
+}# else { print(sprintf("INFO %s::w4m_filter_by_sample_class - file '%s' was exists", modNamC, dataMatrix_out)) }
+
+if (!file.exists(variableMetadata_out)) {
+  print(sprintf("ERROR %s::w4m_filter_by_sample_class - file '%s' was not created", modNamC, variableMetadata_out))
+} # else { print(sprintf("INFO %s::w4m_filter_by_sample_class - file '%s' was exists", modNamC, variableMetadata_out)) }
+
+if (!file.exists(sampleMetadata_out)) {
+  print(sprintf("ERROR %s::w4m_filter_by_sample_class - file '%s' was not created", modNamC, sampleMetadata_out))
+} # else { print(sprintf("INFO %s::w4m_filter_by_sample_class - file '%s' was exists", modNamC, sampleMetadata_out)) }
+
+if( !result ) {
+  stop(sprintf("ERROR %s::w4m_filter_by_sample_class - method failed", modNamC))
+}
+
+rm(list = ls())