1# ===========================================================================
2#
3#                            PUBLIC DOMAIN NOTICE
4#               National Center for Biotechnology Information
5#
6#  This software/database is a "United States Government Work" under the
7#  terms of the United States Copyright Act.  It was written as part of
8#  the author's official duties as a United States Government employee and
9#  thus cannot be copyrighted.  This software/database is freely available
10#  to the public for use. The National Library of Medicine and the U.S.
11#  Government have not placed any restriction on its use or reproduction.
12#
13#  Although all reasonable efforts have been taken to ensure the accuracy
14#  and reliability of the software and data, the NLM and the U.S.
15#  Government do not and cannot warrant the performance or results that
16#  may be obtained by using this software or data. The NLM and the U.S.
17#  Government disclaim all warranties, express or implied, including
18#  warranties of performance, merchantability or fitness for any particular
19#  purpose.
20#
21#  Please cite the author in any work or product based on this material.
22#
23# ===========================================================================
24
25default: runtests
26runtests: std announce urls_and_accs out_dir_and_file s-option truncated kart resume quality
27slowtests: announce vdbcache wgs lots_wgs hs37d5 ncbi1GB
28
29TOP ?= $(abspath ../..)
30MODULE = test/prefetch
31include $(TOP)/build/Makefile.env
32
33CWD = $(shell pwd)
34PUBLIC=/repository/user/main/public
35CGI=https://trace.ncbi.nlm.nih.gov/Traces/names/names.fcgi
36SDL=https://locate.ncbi.nlm.nih.gov/sdl/2/retrieve
37LARGE=fasp://aspera@demo.asperasoft.com:aspera-test-dir-large/100MB
38SRA=https://sra-download.ncbi.nlm.nih.gov
39SRAF=fasp://dbtest@sra-download.ncbi.nlm.nih.gov
40#SRAF=fasp://dbtest@srafiles31-1.st-va.ncbi.nlm.nih.gov
41KMER=$(SRA)/traces/nannot01/kmer/000/390/GCA_000390265.1_R
42KMERF=$(SRAF):data/sracloud/traces/nannot01/kmer/000/390/GCA_000390265.1_R
43REFSEQ=$(SRA)/traces/refseq/KC702174.1
44REFSEQF=$(SRAF):data/sracloud/traces/refseq/KC702174.1
45SRAC=SRR053325
46SRR=$(SRA)/sos2/sra-pub-run-15/$(SRAC)/$(SRAC).4
47SRR=$(shell NCBI_SETTINGS=/ ${BINDIR}/srapath ${SRAC})
48INT=https://sra-download-internal.ncbi.nlm.nih.gov
49DDB=https://sra-downloadb.be-md.ncbi.nlm.nih.gov
50#SRR=$(DDB)/sos/sra-pub-run-5/$(SRAC)/$(SRAC).3
51SRAI=fasp://dbtest@sra-download-internal.ncbi.nlm.nih.gov
52SRRF=$(SRAF):data/sracloud/traces/sra57/SRR/000052/$(SRAC)
53SRRF=$(SRAI):data/sracloud/traces/sra57/SRR/000052/$(SRAC)
54WGS=$(SRA)/traces/wgs03/WGS/AF/VF/AFVF01.1
55WGSF=$(SRAF):data/sracloud/traces/wgs03/WGS/AF/VF/AFVF01.1
56
57DIRTOTEST ?= $(BINDIR)
58SRR=$(shell SRATOOLS_FORCE_INSTALL=1 ${DIRTOTEST}/srapath ${SRAC})
59B=$(DIRTOTEST)
60
61HTTP_URL=https://test.ncbi.nlm.nih.gov/home/about/contact.shtml
62HTTPFILE=contact.shtml
63
64INT_TOOLS = \
65
66EXT_TOOLS = \
67	test-quality
68
69ALL_TOOLS = \
70	$(INT_TOOLS) \
71	$(EXT_TOOLS)
72
73#-------------------------------------------------------------------------------
74# outer targets
75#
76all std: vers-includes
77	@ $(MAKE_CMD) $(TARGDIR)/$@
78
79$(ALL_TOOLS): vers-includes
80	@ $(MAKE_CMD) $(BINDIR)/$@
81
82.PHONY: all std $(ALL_TOOLS)
83
84#-------------------------------------------------------------------------------
85# all
86#
87$(TARGDIR)/all: \
88	$(addprefix $(BINDIR)/,$(ALL_TOOLS))
89
90.PHONY: $(TARGDIR)/all
91
92#-------------------------------------------------------------------------------
93# std
94#
95$(TARGDIR)/std: \
96	$(addprefix $(BINDIR)/,$(EXT_TOOLS))
97
98.PHONY: $(TARGDIR)/std
99
100#-------------------------------------------------------------------------------
101# vers-includes
102#
103$(TARGDIR)/vers-includes: $(addsuffix .vers.h,$(EXT_TOOLS))
104
105.PHONY: $(TARGDIR)/vers-includes
106
107#-------------------------------------------------------------------------------
108# clean
109#
110clean: stdclean
111
112.PHONY: clean
113
114#-------------------------------------------------------------------------------
115# TOOL_SRC
116#
117TOOL_SRC = \
118	test-quality \
119
120TOOL_OBJ = \
121	$(addsuffix .$(OBJX),$(TOOL_SRC))
122
123TOOL_LIB = \
124	-lkapp \
125	-sncbi-vdb \
126	-lm
127
128$(BINDIR)/test-quality: $(TOOL_OBJ)
129	$(LP) --exe --vers $(SRCDIR) -o $@ $^ -L$(VDB_LIBDIR) -L$(VDB_LIBDIR)/../ilib $(TOOL_LIB)
130
131announce:
132	@echo Testing $(DIRTOTEST)
133
134################################################################################
135urls_and_accs:
136	@mkdir -p tmp tmp2
137	@rm -fr tmp/* tmp2/*
138	@echo '/LIBS/GUID = "8test002-6ab7-41b2-bfd0-prefetchpref"' > tmp/t.kfg
139
140	@echo prefetch URL-1 when there is no kfg
141	@rm -f wiki
142	export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
143	    $(DIRTOTEST)/prefetch https://github.com/ncbi/ngs/wiki
144	@rm wiki
145
146	@echo prefetch URL-2/2 when there is no kfg
147	@rm -f index.html
148	@export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
149	    $(DIRTOTEST)/prefetch https://github.com/ncbi/ >/dev/null
150	@rm index.html
151
152	@echo prefetch URL-2/1 when there is no kfg
153	@export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
154	    if ping -c1 intranet > /dev/null ; then \
155	       $(DIRTOTEST)/prefetch http://intranet/ >/dev/null ; rm index.html ; \
156	    fi
157
158	@echo prefetch URL-2/3 when there is no kfg
159	@export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
160	    if ping -c1 intranet > /dev/null ; then \
161	     $(DIRTOTEST)/prefetch $(HTTP_URL) > /dev/null; \
162	    fi
163
164	@echo '/LIBS/GUID = "8test002-6ab7-41b2-bfd0-prefetchpref"' > tmp/t.kfg
165	@echo '$(PUBLIC)/apps/file/volumes/flat = "files"' >> tmp/t.kfg
166	@echo '$(PUBLIC)/root = "$(CWD)/tmp"' >> tmp/t.kfg
167
168	@if ls `pwd`/tmp2/$(HTTPFILE) 2> /dev/null ; \
169     then echo $(HTTPFILE) found ; exit 1 ; fi
170	@echo HTTP download when user repository is configured
171	@export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; cd tmp2 ; \
172	    if ping -c1 intranet > /dev/null ; then \
173	    $(DIRTOTEST)/prefetch $(HTTP_URL) > /dev/null ; fi
174	@if ping -c1 intranet > /dev/null ; \
175	 then ls `pwd`/tmp2/$(HTTPFILE) > /dev/null ; fi
176
177	@echo Running prefetch second time finds previous download
178	@export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; cd tmp2 ; \
179	 if ping -c1 intranet > /dev/null ; then \
180	     $(DIRTOTEST)/prefetch $(HTTP_URL) \
181	        | grep "found local" > /dev/null ; fi
182
183	@rm -f $(HTTPFILE)
184
185	@if ls `pwd`/tmp2/index.html 2> /dev/null ; \
186     then echo index.shtml found ; exit 1; fi
187	@echo HTTP download when user repository is configured
188	@export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; cd tmp2 ; \
189	 if ping -c1 intranet > /dev/null ; then \
190	    $(DIRTOTEST)/prefetch http://intranet/ > /dev/null ; fi
191	@if ping -c1 intranet>/dev/null; then ls `pwd`/tmp2/index.html > /dev/null;fi
192
193	@echo Running prefetch second time finds previous download
194	@export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; cd tmp2 ; \
195	 if ping -c1 intranet > /dev/null ; then \
196	    $(DIRTOTEST)/prefetch http://intranet/ | grep "found local" >/dev/null;fi
197	@rm -f `pwd`/tmp2/index.html
198
199	@echo URL download when user repository is configured
200	@if ls `pwd`/tmp2/wiki 2> /dev/null ; then echo wiki found ; exit 1; fi
201	@export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; cd tmp2 ; \
202	    $(DIRTOTEST)/prefetch https://github.com/ncbi/ngs/wiki > /dev/null
203	@ls `pwd`/tmp2/wiki > /dev/null
204
205	@echo Running prefetch second time finds previous download
206	@export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; cd tmp2 ; \
207	    $(DIRTOTEST)/prefetch https://github.com/ncbi/ngs/wiki \
208	                              | grep "found local" > /dev/null
209
210	@echo URL/ download when user repository is configured
211	@if ls `pwd`/tmp2/index.html 2> /dev/null ; \
212     then echo index.html found ; exit 1; fi
213	@export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; cd tmp2 ; \
214	    $(DIRTOTEST)/prefetch https://github.com/ncbi/ > /dev/null
215	@ls `pwd`/tmp2/index.html > /dev/null
216
217	@echo Running prefetch second time finds previous download
218	@export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; cd tmp2 ; \
219	  $(DIRTOTEST)/prefetch https://github.com/ncbi/|grep "found local">/dev/null
220	@rm `pwd`/tmp2/index.html
221
222	@ if echo $(SRR) | grep -vq /sdlr/sdlr.fcgi?jwt= ; \
223	  then \
224         echo prefetch $(SRR) when there is no kfg && \
225	     NCBI_VDB_RELIABLE=y NCBI_SETTINGS=/ VDB_CONFIG=`pwd`/tmp \
226	                               $(DIRTOTEST)/prefetch $(SRR) > /dev/null && \
227	     rm -r $(SRAC) ; \
228	  else \
229	     echo prefetch test when CE is required is skipped ; \
230	  fi
231
232	@echo '$(PUBLIC)/apps/sra/volumes/sraFlat = "sra"' >> tmp/t.kfg
233	@rm -f `pwd`/tmp/sra/$(SRAC).sra
234	@ if echo $(SRR) | grep -vq /sdlr/sdlr.fcgi?jwt= ; \
235	  then \
236		echo SRR download when user repository is configured && \
237		NCBI_SETTINGS=/ NCBI_VDB_RELIABLE=y VDB_CONFIG=`pwd`/tmp \
238		   ENV_VAR_LOG_HTTP_RETRY=1 $(DIRTOTEST)/prefetch $(SRR) > /dev/null && \
239		ls `pwd`/tmp/sra/$(SRAC).sra > /dev/null && \
240	     \
241	     echo Running prefetch second time finds previous download && \
242	     export VDB_CONFIG=`pwd`/tmp && export NCBI_SETTINGS=/ && \
243		$(DIRTOTEST)/prefetch $(SRR) | grep "found local" > /dev/null ; \
244	  else \
245	     echo prefetch test when CE is required is skipped ; \
246	  fi
247
248	@echo prefetch $(REFSEQ) when there is no kfg
249	@rm -f KC702174.1
250	@export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
251	    $(DIRTOTEST)/prefetch $(REFSEQ) > /dev/null
252	@rm KC702174.1*
253
254	@echo '$(PUBLIC)/apps/refseq/volumes/refseq = "refseq"' >> tmp/t.kfg
255	@echo REFSEQ HTTP download when user repository is configured
256	@if ls `pwd`/tmp/refseq/KC702174.1 2> /dev/null ; \
257     then echo KC702174.1 found ; exit 1; fi
258	@export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
259	    $(DIRTOTEST)/prefetch $(REFSEQ) > /dev/null
260	@ls `pwd`/tmp/refseq/KC702174.1 > /dev/null
261
262	@echo Running prefetch second time finds previous download
263	@export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
264	    $(DIRTOTEST)/prefetch $(REFSEQ) | grep "found local" > /dev/null
265
266	@export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
267	    if $(DIRTOTEST)/prefetch $(KMER) > /dev/null 2>&1 ; \
268        then echo "prefetch $(KMER) when there is no kfg should fail"; exit 1; \
269	    fi
270
271	@echo '$(PUBLIC)/apps/nakmer/volumes/nakmerFlat = "nannot"' >> tmp/t.kfg
272	@echo NANNOT download when user repository is configured
273	@if ls `pwd`/tmp/nannot/GCA_000390265.1_R 2> /dev/null ; \
274     then echo GCA_000390265.1_R found ; exit 1 ; fi
275	@export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
276	    $(DIRTOTEST)/prefetch $(KMER) > /dev/null
277	@ls `pwd`/tmp/nannot/GCA_000390265.1_R > /dev/null
278
279	@echo Running prefetch second time finds previous download
280	@export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
281	    $(DIRTOTEST)/prefetch $(KMER) | grep "found local" > /dev/null
282
283	@echo "prefetch $(WGS) when there is no kfg"
284	@NCBI_SETTINGS=/ VDB_CONFIG=`pwd`/tmp \
285	       $(DIRTOTEST)/prefetch $(WGS) > /dev/null 2>&1
286	@rm AFVF01.1
287
288	@echo '$(PUBLIC)/apps/wgs/volumes/wgsFlat = "wgs"' >> tmp/t.kfg
289	@echo
290	@echo WGS HTTP download when user repository is configured
291	@if ls `pwd`/tmp/wgs/AFVF01.1 2> /dev/null ; \
292		then echo AFVF01.1 found ; exit 1; fi
293	@export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
294	    $(DIRTOTEST)/prefetch $(WGS) > /dev/null
295	@ls `pwd`/tmp/wgs/AFVF01.1 > /dev/null
296	@rm `pwd`/tmp/wgs/AFVF01.1
297	@echo
298
299	@rm -f `pwd`/tmp/refseq/KC702174.1
300	@ if [ "${HAVE_NCBI_ASCP}" = "1" ] ; then \
301	    echo REFSEQ FASP download when user repository is configured ; \
302	    export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
303	      $(DIRTOTEST)/prefetch $(REFSEQF) > /dev/null && \
304	    ls `pwd`/tmp/refseq/KC702174.1 > /dev/null ; \
305	 else echo download of $(REFSEQF) when ascp is not found is disabled ; \
306	 fi
307
308	@rm `pwd`/tmp/nannot/GCA_000390265.1_R
309	@echo NANNOT FASP download when user repository is configured
310	@ if [ "${HAVE_NCBI_ASCP}" = "1" ] ; then \
311	    echo NANNOT FASP download when user repository is configured ; \
312	    export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
313	      $(DIRTOTEST)/prefetch $(KMERF) > /dev/null ; \
314	      ls `pwd`/tmp/nannot/GCA_000390265.1_R > /dev/null ; \
315	 else echo download of $(KMERF) when ascp is not found is disabled ; \
316	 fi
317
318	@if ls `pwd`/tmp/wgs/AFVF01.1 2> /dev/null ; \
319     then echo AFVF01.1 found ; exit 1; fi
320	@ if [ "${HAVE_NCBI_ASCP}" = "1" ] ; then echo ; \
321	    echo WGS FASP download when user repository is configured ; \
322	    export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
323	      $(DIRTOTEST)/prefetch $(WGSF) > /dev/null ; \
324	    ls `pwd`/tmp/wgs/AFVF01.1 > /dev/null ; \
325	    rm `pwd`/tmp/wgs/AFVF01.1 ; \
326	 else echo download of $(WGSF) when ascp is not found is disabled ; \
327	 fi
328	@echo
329
330	@rm -f `pwd`/tmp/sra/$(SRAC).sra
331
332	@echo 'repository/remote/main/CGI/resolver-cgi = "$(CGI)"' >> tmp/t.kfg
333	@echo SRR accession download
334	@export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
335	    $(DIRTOTEST)/prefetch $(SRAC) > /dev/null
336	@ls `pwd`/tmp/sra/$(SRAC).sra > /dev/null
337
338	@echo prefetch run with refseqs
339	@rm -fr `pwd`/SRR619505
340	@rm -fv `pwd`/tmp/sra/SRR619505.sra
341	@rm -fv `pwd`/tmp/refseq/NC_000005.8
342	@export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
343	    $(DIRTOTEST)/prefetch SRR619505 > /dev/null
344	@ls `pwd`/tmp/sra/SRR619505.sra > /dev/null
345	@ls `pwd`/tmp/refseq/NC_000005.8 > /dev/null
346
347	@echo REFSEQ accession download
348	@rm -f `pwd`/tmp/refseq/KC702174.1
349	@export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
350	    $(DIRTOTEST)/prefetch KC702174.1 > /dev/null
351	@ls `pwd`/tmp/refseq/KC702174.1 > /dev/null
352
353	@echo NANNOT accession download
354	@rm -f `pwd`/tmp/nannot/GCA_000390265.1_R
355	@export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
356	    $(DIRTOTEST)/prefetch GCA_000390265.1_R > /dev/null
357	@ls `pwd`/tmp/nannot/GCA_000390265.1_R > /dev/null
358
359	@echo WGS accession download
360	@rm -f `pwd`/tmp/wgs/AFVF01
361	@export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
362	    $(DIRTOTEST)/prefetch AFVF01 > /dev/null
363	@ls `pwd`/tmp/wgs/AFVF01 > /dev/null
364	@rm `pwd`/tmp/wgs/AFVF01
365
366	@if ls `pwd`/tmp2/100MB 2> /dev/null ; \
367     then echo 100MB found ; exit 1; fi
368	@ echo FASP download: asperasoft/100MB: turned off
369
370	@if ascp -h > /dev/null ; \
371     then \
372	    export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; cd tmp2 ; \
373	 else \
374	    if $(DIRTOTEST)/prefetch $(LARGE) 2> /dev/null ; \
375        then \
376            echo "prefetch <FASP URL> when ascp is not found should fail" ; \
377            exit 1; \
378	     fi ; \
379	 fi
380
381	@rm -f `pwd`/tmp2/100MB
382	@export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; cd tmp2 ; \
383	    if $(DIRTOTEST)/prefetch fasp://anonftp@ftp.ncbi.nlm.nih.gov:100MB \
384                                                             > /dev/null 2>&1; \
385	    then echo "prefetch <FASP> when FASP source is not found should fail"; \
386             exit 1 ; \
387	    fi
388
389	@rm -r tmp*
390
391vdbcache:
392	@ echo vdbcache download
393
394	@ rm -frv tmp
395
396	@ mkdir -p tmp
397	@ echo '/LIBS/GUID = "8test002-6ab7-41b2-bfd0-prefetchpref"' > tmp/t.kfg
398
399	@ export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
400		cd tmp && $(DIRTOTEST)/prefetch SRR6667190  > /dev/null
401	@ ls `pwd`/tmp/SRR6667190/SRR6667190.sra            > /dev/null
402	@ ls `pwd`/tmp/SRR6667190/SRR6667190.sra.vdbcache   > /dev/null
403
404	@ rm -r tmp
405
406################################################################################
407
408ncbi1GB:
409	@mkdir -p tmp
410
411	@echo '/LIBS/GUID = "8test002-6ab7-41b2-bfd0-prefetchpref"' > tmp/t.kfg
412
413	@if ls `pwd`/tmp/1GB 2> /dev/null; \
414	     then echo 1GB found ; exit 1; fi
415
416	@ if [ "${HAVE_NCBI_ASCP}" = "1" ] ; then \
417	  echo FASP download: ncbi/1GB ; \
418	  export VDB_CONFIG=`pwd`/tmp && export NCBI_SETTINGS=/ && cd tmp && \
419	    $(DIRTOTEST)/prefetch fasp://anonftp@ftp.ncbi.nlm.nih.gov:1GB>/dev/null&&\
420	    ls `pwd`/1GB > /dev/null ; \
421	 fi
422
423	@rm -r tmp
424
425################################################################################
426
427out_dir_and_file:
428	@ mkdir -p tmp tmp2
429	@ rm -fr tmp*/*
430	@ echo  version 1.0     >  tmp/k
431	@ echo '0||SRR053325||' >> tmp/k
432	@ echo '$$end'          >> tmp/k
433
434	@ echo '/LIBS/GUID = "8test002-6ab7-41b2-bfd0-prefetchpref"' > tmp/t.kfg
435	@ echo 'repository/remote/main/CGI/resolver-cgi = "$(CGI)"' >> tmp/t.kfg
436	@ echo '$(PUBLIC)/apps/sra/volumes/sraFlat = "sra"'         >> tmp/t.kfg
437	@ echo '$(PUBLIC)/root = "$(CWD)/tmp"'                      >> tmp/t.kfg
438	@ echo '/repository/site/disabled = "true"'                 >> tmp/t.kfg
439
440	@ echo PREFETCH ACCESSION TO OUT-FILE
441	@ rm -f `pwd`/tmp-file*
442	@ NCBI_SETTINGS=/ NCBI_VDB_RELIABLE=y VDB_CONFIG=`pwd`/tmp \
443	    $(DIRTOTEST)/prefetch $(SRAC) -o tmp-file -v > /dev/null
444	@ ls `pwd`/tmp-file > /dev/null
445	@ rm `pwd`/tmp-file
446
447	@ echo PREFETCH ACCESSION TO OUT-FILE INSIDE OF DIR
448	@ if ls `pwd`/tmp3/dir/file 2> /dev/null ; \
449      then echo file found ; exit 1 ; fi
450	@ export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
451	    $(DIRTOTEST)/prefetch $(SRAC) -O / -o tmp3/dir/file -v > /dev/null
452	@ ls `pwd`/tmp3/dir/file > /dev/null
453
454	@ if echo $(SRR) | grep -vq /sdlr/sdlr.fcgi?jwt= ; \
455	  then \
456	     echo PREFETCH SRR HTTP URL TO OUT-FILE && \
457	     rm -f `pwd`/tmp3/dir/file && \
458	     NCBI_SETTINGS=/ NCBI_VDB_RELIABLE=y VDB_CONFIG=`pwd`/tmp \
459	         $(DIRTOTEST)/prefetch $(SRR) -O / -o tmp3/dir/file > /dev/null && \
460	     ls `pwd`/tmp3/dir/file > /dev/null ; \
461       else \
462	     echo prefetch test when CE is required is skipped ; \
463	  fi
464
465	@ echo PREFETCH SRR FASP URL TO OUT-FILE IS DISABLED
466#	@ if [ "${HAVE_NCBI_ASCP}" = "1" ] ; then \
467	    echo PREFETCH SRR FASP URL TO OUT-FILE ; \
468	    rm -f `pwd`/tmp3/dir/file ; \
469	    export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
470	    $(DIRTOTEST)/prefetch $(SRRF) -O / -o tmp3/dir/file > /dev/null ; \
471	    ls `pwd`/tmp3/dir/file > /dev/null ; \
472	  else echo download of SRR FASP URL when ascp is not found is disabled ; \
473	  fi
474#	@ echo
475#	@ echo
476
477	@ echo PREFETCH HTTP DIRECTORY URL TO OUT-FILE
478	@ rm -f `pwd`/tmp3/dir/file
479	@ export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
480	    $(DIRTOTEST)/prefetch https://github.com/ncbi/ -O / -o tmp3/dir/file \
481	        > /dev/null
482	@ ls `pwd`/tmp3/dir/file > /dev/null
483#	@ echo
484
485	@ echo PREFETCH HTTP FILE URL TO OUT-FILE
486	@ rm -f `pwd`/tmp3/dir/file
487	@ export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
488	    $(DIRTOTEST)/prefetch https://github.com/ncbi/ngs/wiki -O / \
489	                       -o tmp3/dir/file > /dev/null
490	@ ls `pwd`/tmp3/dir/file > /dev/null
491#	@ echo
492
493	@ if [ "${HAVE_NCBI_ASCP}" = "1" ] ; then \
494	    echo PREFETCH FASP URL TO OUT-FILE ; \
495	    export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
496	    rm -f `pwd`/tmp3/dir/file ; \
497	    $(DIRTOTEST)/prefetch $(REFSEQF) -O / -o tmp3/dir/file > /dev/null ; \
498	    ls `pwd`/tmp3/dir/file > /dev/null ; \
499	  else echo download of SRR FASP URL when ascp is not found is disabled ; \
500	  fi
501
502	@ if [ "$(BUILD)" = "dbg" ]; then \
503	    echo PREFETCH TEXT-KART was disabled: need to have a public example of protected run or add support of public accessions; \
504	    export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
505	    echo $(DIRTOTEST)/prefetch --text-kart tmp/k > /dev/null ; \
506	    echo ls `pwd`/tmp/sra/SRR053325.sra > /dev/null ; \
507	  fi
508
509	@ export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
510	  if $(DIRTOTEST)/prefetch SRR045450 $(SRAC) -o tmp/o 2> /dev/null ; \
511	  then echo unexpected success when downloading multiple items to file ; \
512	      exit 1 ; \
513	  fi ;
514
515	@ echo PREFETCH MULTIPLE ITEMS
516	@ rm -fr `pwd`/SRR0* `pwd`/tmp/sra
517	@ export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
518	    $(DIRTOTEST)/prefetch SRR045450 $(SRAC) > /dev/null
519	@ ls `pwd`/tmp/sra/SRR045450.sra `pwd`/tmp/sra/$(SRAC).sra > /dev/null
520
521	@ if echo $(SRR) | grep -vq /sdlr/sdlr.fcgi?jwt= ; \
522	  then \
523	     echo PREFETCH SRR HTTP URL && \
524	     rm `pwd`/tmp/sra/$(SRAC).sra && \
525	     export VDB_CONFIG=`pwd`/tmp && export NCBI_SETTINGS=/ && \
526	                               $(DIRTOTEST)/prefetch $(SRR) > /dev/null && \
527	     ls `pwd`/tmp/sra/$(SRAC).sra > /dev/null ; \
528	  else \
529	     echo prefetch test when CE is required is skipped ; \
530	  fi
531
532	@ echo PREFETCH SRR FASP URL IS DISABLED
533#	@ if [ "${HAVE_NCBI_ASCP}" = "1" ] ; then \
534	    echo PREFETCH SRR FASP URL ; \
535	    rm `pwd`/tmp/sra/$(SRAC).sra ; \
536	    export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
537	    $(DIRTOTEST)/prefetch $(SRRF) > /dev/null ; \
538	    ls `pwd`/tmp/sra/$(SRAC).sra > /dev/null ; \
539	  else echo download of SRR FASP URL when ascp is not found is disabled ; \
540	  fi
541
542	@ echo PREFETCH HTTP DIRECTORY URL
543	@ if ls `pwd`/tmp2/index.html 2> /dev/null ; then exit 1; fi
544	@ export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; cd tmp2 ; \
545	    $(DIRTOTEST)/prefetch https://github.com/ncbi/ > /dev/null
546	@ ls `pwd`/tmp2/index.html > /dev/null
547	@ rm `pwd`/tmp2/index.html
548
549	@ echo PREFETCH HTTP FILE URL
550	@ if ls `pwd`/tmp2/wiki 2> /dev/null ; \
551      then echo wiki found ; exit 1 ; fi
552	@ export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; cd tmp2 ; \
553	    $(DIRTOTEST)/prefetch https://github.com/ncbi/ngs/wiki > /dev/null
554	@ ls `pwd`/tmp2/wiki > /dev/null
555
556	@ if [ "${HAVE_NCBI_ASCP}" = "1" ] ; then \
557	    echo PREFETCH FASP URL ; \
558	    export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; cd tmp2 ; \
559	    if ls `pwd`/KC702174.1 2> /dev/null ; then exit 1; fi ; \
560	    $(DIRTOTEST)/prefetch $(REFSEQF) > /dev/null && \
561	    ls `pwd`/KC702174.1 > /dev/null ; \
562	  else echo download of FASP URL when ascp is not found is disabled ; \
563	  fi
564
565	@ echo PREFETCH ACCESSION TO OUT-DIR
566	@ rm -f `pwd`/tmp3/dir/$(SRAC).sra
567	@ export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
568	    $(DIRTOTEST)/prefetch $(SRAC) -O tmp3/dir > /dev/null
569	@ ls `pwd`/tmp3/dir/$(SRAC).sra > /dev/null
570
571	@ if echo $(SRR) | grep -vq /sdlr/sdlr.fcgi?jwt= ; \
572	  then \
573	     echo PREFETCH SRR HTTP URL TO OUT-DIR && \
574	     rm -f `pwd`/tmp3/dir/$(SRAC).sra && \
575	     export VDB_CONFIG=`pwd`/tmp && export NCBI_SETTINGS=/ && \
576	                   $(DIRTOTEST)/prefetch $(SRR) -O tmp3/dir > /dev/null && \
577	     ls `pwd`/tmp3/dir/$(SRAC).sra > /dev/null ; \
578	  else \
579	     echo prefetch test when CE is required is skipped ; \
580	  fi
581
582	@ echo PREFETCH SRR FASP URL TO OUT-DIR IS DISABLED
583#	@ if [ "${HAVE_NCBI_ASCP}" = "1" ] ; then \
584	    echo PREFETCH SRR FASP URL TO OUT-DIR ; \
585	    rm -f `pwd`/tmp3/dir/$(SRAC).sra ; \
586	    export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
587	    $(DIRTOTEST)/prefetch $(SRRF) -O tmp3/dir > /dev/null ; \
588	    ls `pwd`/tmp3/dir/$(SRAC).sra > /dev/null ; \
589	  else echo download of SRR FASP URL when ascp is not found is disabled ; \
590	  fi
591#	@ echo
592
593	@ echo PREFETCH HTTP DIRECTORY URL TO OUT-DIR
594	@ rm -f index.html
595	@ if ls `pwd`/tmp3/dir/index.html 2> /dev/null ; \
596      then echo index.html found ; exit 1 ; fi
597	@export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
598	    $(DIRTOTEST)/prefetch https://github.com/ncbi/ -O tmp3/dir > /dev/null
599	@ ls `pwd`/tmp3/dir/index.html > /dev/null
600#	@ echo
601
602	@ echo PREFETCH HTTP FILE URL TO OUT-DIR
603	@ rm -f wiki
604	@ if ls `pwd`/tmp3/dir/wiki 2> /dev/null ; \
605      then echo wiki found ; exit 1 ; fi
606	@ export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
607	    $(DIRTOTEST)/prefetch https://github.com/ncbi/ngs/wiki -O tmp3/dir \
608	                       > /dev/null
609	@ ls `pwd`/tmp3/dir/wiki > /dev/null
610#	@ echo
611
612	@ if [ "${HAVE_NCBI_ASCP}" = "1" ] ; then \
613	    echo PREFETCH FASP URL TO OUT-DIR ; \
614	    export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
615	    if ls `pwd`/tmp3/dir/KC702174.1 2> /dev/null ; then \
616        echo 100MB found ; exit 1 ; fi ; \
617	    $(DIRTOTEST)/prefetch $(REFSEQF) -O tmp3/dir > /dev/null && \
618	    ls `pwd`/tmp3/dir/KC702174.1 > /dev/null ; \
619	  else echo download of SRR FASP URL when ascp is not found is disabled ; \
620	  fi
621#	@ echo
622
623	@ rm -r tmp*
624
625s-option:
626	@ mkdir -p tmp
627	@ echo '/LIBS/GUID = "8test002-6ab7-41b2-bfd0-prefetchpref"' > tmp/t.kfg
628	@ echo 'repository/remote/main/CGI/resolver-cgi = "$(CGI)"' >> tmp/t.kfg
629	@ echo '$(PUBLIC)/apps/sra/volumes/sraFlat = "sra"'         >> tmp/t.kfg
630	@ echo '$(PUBLIC)/root = "$(CWD)/tmp"'                      >> tmp/t.kfg
631
632	@ echo Downloading KART was disabled: need to have a public example of protected run or add support of public accessions
633	@ rm -f tmp/sra/SRR0*
634	@ export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
635	#	$(DIRTOTEST)/prefetch kart.krt > /dev/null
636
637	@ echo Downloading KART: ORDER BY SIZE / SHORT OPTION disabled, too
638	@ rm -f tmp/sra/*
639	@ export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
640	#	$(DIRTOTEST)/prefetch kart.krt -os > /dev/null
641
642	@ echo Downloading KART: ORDER BY KART / SHORT OPTION disabled, too
643	@ rm -f tmp/sra/*
644	@ export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
645	#	$(DIRTOTEST)/prefetch kart.krt -ok > /dev/null
646
647	@ echo Downloading KART: ORDER BY SIZE / LONG OPTION disabled, too
648	@ rm -f tmp/sra/*
649	@ export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
650	#	$(DIRTOTEST)/prefetch kart.krt --order s > /dev/null
651
652	@ echo Downloading KART: ORDER BY KART / LONG OPTION disabled, too
653	@ rm -f tmp/sra/*
654	@ export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
655	#	$(DIRTOTEST)/prefetch kart.krt --order k > /dev/null
656
657	@ echo Downloading ACCESSION
658	@ rm -f tmp/sra/$(SRAC).sra
659	@ export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
660	    $(DIRTOTEST)/prefetch $(SRAC) > /dev/null
661
662	@ echo Downloading ACCESSION TO FILE: SHORT OPTION
663	@ rm -f tmp/1
664	@ export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
665	    $(DIRTOTEST)/prefetch $(SRAC) -otmp/1 > /dev/null
666#	@ echo
667
668	@ echo Downloading ACCESSION TO FILE: LONG OPTION
669	@ rm -f tmp/2
670	@ export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
671	    $(DIRTOTEST)/prefetch $(SRAC) --output-file tmp/2 > /dev/null
672
673	@ echo Downloading ACCESSIONS
674	@ rm -f tmp/sra/*
675	@ export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
676	    $(DIRTOTEST)/prefetch $(SRAC) SRR045450 > /dev/null
677
678	@ export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
679	  if $(DIRTOTEST)/prefetch SRR045450 $(SRAC) -o tmp/o 2> /dev/null ; \
680	  then echo unexpected success when downloading multiple items to file ; \
681	      exit 1 ; \
682	  fi ;
683
684	@ export VDB_CONFIG=`pwd`/tmp; export NCBI_SETTINGS=/ ; \
685	  if $(DIRTOTEST)/prefetch SRR045450 $(SRAC) -output-file tmp/o \
686                                                                2> /dev/null ; \
687	  then echo unexpected success when downloading multiple items to file ; \
688	      exit 1 ; \
689	  fi ;
690
691	@ echo  version 1.0     >  tmp/k
692	@ echo '0||SRR045450||' >> tmp/k
693	@ echo '0||SRR053325||' >> tmp/k
694	@ echo '$$end'          >> tmp/k
695
696	@ if [ "$(BUILD)" = "dbg" ]; then \
697	echo Downloading TEXT KART is disabled, as well ; \
698    if [ "$(BUILD)" = "dg" ]; then \
699	      echo Downloading TEXT KART && \
700	      rm -f tmp/sra/* && \
701	      export VDB_CONFIG=`pwd`/tmp && export NCBI_SETTINGS=/ && \
702	      $(DIRTOTEST)/prefetch --text-kart tmp/k > /dev/null && \
703          \
704	      echo Downloading TEXT KART: ORDER BY SIZE / SHORT OPTION && \
705	      rm -f tmp/sra/* && \
706	      export VDB_CONFIG=`pwd`/tmp && export NCBI_SETTINGS=/ && \
707	      $(DIRTOTEST)/prefetch --text-kart tmp/k -os > /dev/null 2>&1 && \
708          \
709	      echo Downloading TEXT KART: ORDER BY KART / SHORT OPTION && \
710	      rm -f tmp/sra/* && \
711	      export VDB_CONFIG=`pwd`/tmp && export NCBI_SETTINGS=/ && \
712	      $(DIRTOTEST)/prefetch --text-kart tmp/k -ok > /dev/null 2>&1 && \
713          \
714	      echo Downloading TEXT KART: ORDER BY SIZE / LONG OPTION && \
715	      rm -f tmp/sra/* && \
716	      export VDB_CONFIG=`pwd`/tmp && export NCBI_SETTINGS=/ && \
717	      $(DIRTOTEST)/prefetch --text-kart tmp/k --order s > /dev/null && \
718          \
719	      echo Downloading TEXT KART: ORDER BY KART / LONG OPTION && \
720	      rm -f tmp/sra/* && \
721	      export VDB_CONFIG=`pwd`/tmp && export NCBI_SETTINGS=/ && \
722	      $(DIRTOTEST)/prefetch --text-kart tmp/k --order k > /dev/null ; \
723	  fi \
724	  fi
725
726	@ rm -r tmp*
727
728truncated:
729	@ echo prefetch correctly re-downloads incomplete files
730
731#setup
732	@ mkdir -p tmp/sra
733	@ echo '/LIBS/GUID = "8test002-6ab7-41b2-bfd0-prefetchpref"' > tmp/t.kfg
734	@ echo 'repository/remote/main/CGI/resolver-cgi = "$(CGI)"' >> tmp/t.kfg
735	@ echo '$(PUBLIC)/apps/sra/volumes/sraFlat = "sra"'         >> tmp/t.kfg
736	@ echo '$(PUBLIC)/root = "$(CWD)/tmp"'                      >> tmp/t.kfg
737#	@ ls -l tmp	@ cat tmp/t.kfg
738#	@ VDB_CONFIG=`pwd`/tmp NCBI_SETTINGS=/ $(DIRTOTEST)/vdb-config -on
739#	@ VDB_CONFIG=`pwd`/tmp NCBI_SETTINGS=/ $(DIRTOTEST)/srapath $(SRAC)
740#	echo 669	perl check-size.pl 4	echo 671
741
742# create truncated run
743	@ echo '123' > tmp/sra/$(SRAC).sra
744	@ if perl check-size.pl 4 > /dev/null; \
745	  then echo "run should be truncated for this test"; exit 1; \
746	  fi
747
748# prefetch should detect truncated run and redownload it
749	@ VDB_CONFIG=`pwd`/tmp NCBI_SETTINGS=/ $(DIRTOTEST)/prefetch $(SRAC) >tmp/out
750	@ if grep ": 1) '$(SRAC)' is found locally" tmp/out ; \
751	  then echo "prefetch incorrectly stopped on truncated run"; exit 1; \
752	  fi
753#	@ wc tmp/sra/$(SRAC).sra	@ wc -c tmp/sra/$(SRAC).sra
754
755# run should be complete
756	@ perl check-size.pl 4
757
758# the second run of prefetch should find local file
759	@ VDB_CONFIG=`pwd`/tmp NCBI_SETTINGS=/ $(DIRTOTEST)/prefetch $(SRAC) >tmp/out
760	@ grep -q ": 1) '$(SRAC)' is found locally" tmp/out
761	@ perl check-size.pl 4
762
763#cleanup
764	@ rm -r tmp
765
766kart: ##########################################################################
767	@rm -frv tmp/*
768	@mkdir -p tmp
769	@echo '/LIBS/GUID = "8test002-6ab7-41b2-bfd0-prefetchpref"'   > tmp/t.kfg
770	@echo 'repository/remote/main/SDL.2/resolver-cgi = "$(SDL)"' >> tmp/t.kfg
771
772	@echo "Downloading --cart <kart> ordered by default (size)"
773	@cd tmp && printf "ding 'SRR1219879'\nding 'SRR1219880'\nding 'SRR1257493'"|\
774	 NCBI_SETTINGS=/ VDB_CONFIG=. \
775	 perl ../check-prefetch-out.pl 0 0 \
776      "$(DIRTOTEST)/prefetch --ngc ../data/prj_phs710EA_test.ngc --cart ../data/3-dbGaP-0.krt -Cn"
777	@cd tmp && rm     SRR1219879/SRR1219879_dbGaP-0.sra*
778	@cd tmp && rm     SRR1219880/SRR1219880_dbGaP-0.sra*
779	@cd tmp && rm     SRR1257493/SRR1257493_dbGaP-0.sra*
780	@cd tmp && rmdir  SRR1219879 SRR1219880 SRR1257493
781
782	@echo "Downloading kart ordered by default (size)"
783	@cd tmp && printf "ding 'SRR1219879'\nding 'SRR1219880'\nding 'SRR1257493'"|\
784	 NCBI_SETTINGS=/ VDB_CONFIG=. \
785	 perl ../check-prefetch-out.pl 0 0 \
786      "$(DIRTOTEST)/prefetch --ngc ../data/prj_phs710EA_test.ngc ../data/3-dbGaP-0.krt -Cn"
787	@cd tmp && rm     SRR1219879/SRR1219879_dbGaP-0.sra*
788	@cd tmp && rm     SRR1219880/SRR1219880_dbGaP-0.sra*
789	@cd tmp && rm     SRR1257493/SRR1257493_dbGaP-0.sra*
790	@cd tmp && rmdir  SRR1219879 SRR1219880 SRR1257493
791
792	@echo "Downloading kart ordered by size"
793	@cd tmp && printf "ding 'SRR1219879'\nding 'SRR1219880'\nding 'SRR1257493'"|\
794	 NCBI_SETTINGS=/ VDB_CONFIG=. \
795	 perl ../check-prefetch-out.pl 0 0 \
796      "$(DIRTOTEST)/prefetch --ngc ../data/prj_phs710EA_test.ngc ../data/3-dbGaP-0.krt -os -Cn"
797	@cd tmp && rm     SRR1219879/SRR1219879_dbGaP-0.sra*
798	@cd tmp && rm     SRR1219880/SRR1219880_dbGaP-0.sra*
799	@cd tmp && rm     SRR1257493/SRR1257493_dbGaP-0.sra*
800	@cd tmp && rmdir  SRR1219879 SRR1219880 SRR1257493
801
802	@echo "Downloading kart ordered by kart"
803	@cd tmp && printf "ding 'SRR1257493'\nding 'SRR1219880'\nding 'SRR1219879'"|\
804	 NCBI_SETTINGS=/ VDB_CONFIG=. \
805	 perl ../check-prefetch-out.pl 0 0 \
806      "$(DIRTOTEST)/prefetch --ngc ../data/prj_phs710EA_test.ngc ../data/3-dbGaP-0.krt -ok -Cn"
807	@rm tmp/SRR1219879/SRR1219879_dbGaP-0.sra*
808	@rm tmp/SRR1219880/SRR1219880_dbGaP-0.sra*
809	@rm tmp/SRR1257493/SRR1257493_dbGaP-0.sra*
810	@cd tmp && rmdir SRR1219879 SRR1219880 SRR1257493
811
812	@rm -frv tmp/sra
813	@echo '/LIBS/GUID = "8test002-6ab7-41b2-bfd0-prefetchpref"'   > tmp/t.kfg
814	@echo 'repository/remote/main/SDL.2/resolver-cgi = "$(SDL)"' >> tmp/t.kfg
815	@echo '$(PUBLIC)/apps/sra/volumes/sraFlat = "sra"'           >> tmp/t.kfg
816	@echo '$(PUBLIC)/root = "$(CWD)/tmp"'                        >> tmp/t.kfg
817
818	@echo "Downloading kart ordered by default (size) to user repo"
819	@cd tmp && printf "ding 'SRR1219879'\nding 'SRR1219880'\nding 'SRR1257493'"|\
820	 NCBI_SETTINGS=/ VDB_CONFIG=. \
821	 perl ../check-prefetch-out.pl 0 0 \
822      "$(DIRTOTEST)/prefetch --ngc ../data/prj_phs710EA_test.ngc ../data/3-dbGaP-0.krt -Cn"
823	@rm    tmp/sra/SRR1219879_dbGaP-0.sra*
824	@rm    tmp/sra/SRR1219880_dbGaP-0.sra*
825	@rm    tmp/sra/SRR1257493_dbGaP-0.sra*
826	@rmdir tmp/sra
827
828	@echo "Downloading kart ordered by size to user repo"
829	@cd tmp && printf "ding 'SRR1219879'\nding 'SRR1219880'\nding 'SRR1257493'"|\
830	 NCBI_SETTINGS=/ VDB_CONFIG=. \
831	 perl ../check-prefetch-out.pl 0 0 \
832      "$(DIRTOTEST)/prefetch --ngc ../data/prj_phs710EA_test.ngc ../data/3-dbGaP-0.krt -os -Cn"
833	@rm    tmp/sra/SRR1219879_dbGaP-0.sra*
834	@rm    tmp/sra/SRR1219880_dbGaP-0.sra*
835	@rm    tmp/sra/SRR1257493_dbGaP-0.sra*
836	@rmdir tmp/sra
837
838	@echo "Downloading kart ordered by kart to user repo"
839	@cd tmp && printf "ding 'SRR1257493'\nding 'SRR1219880'\nding 'SRR1219879'"|\
840	 NCBI_SETTINGS=/ VDB_CONFIG=. \
841	 perl ../check-prefetch-out.pl 0 0 \
842      "$(DIRTOTEST)/prefetch --ngc ../data/prj_phs710EA_test.ngc ../data/3-dbGaP-0.krt -ok -Cn"
843	@rm    tmp/sra/SRR1219879_dbGaP-0.sra*
844	@rm    tmp/sra/SRR1219880_dbGaP-0.sra*
845	@rm    tmp/sra/SRR1257493_dbGaP-0.sra*
846	@rmdir tmp/sra
847
848	@echo '/tools/prefetch/download_to_cache = "false"' >> tmp/t.kfg
849	@echo "Downloading kart ordered by default (size) ignoring user repo"
850	@cd tmp && printf "ding 'SRR1219879'\nding 'SRR1219880'\nding 'SRR1257493'"|\
851	 NCBI_SETTINGS=/ VDB_CONFIG=. \
852	 perl ../check-prefetch-out.pl 0 0 \
853      "$(DIRTOTEST)/prefetch --ngc ../data/prj_phs710EA_test.ngc ../data/3-dbGaP-0.krt -Cn"
854	@cd tmp && rm     SRR1219879/SRR1219879_dbGaP-0.sra*
855	@cd tmp && rm     SRR1219880/SRR1219880_dbGaP-0.sra*
856	@cd tmp && rm     SRR1257493/SRR1257493_dbGaP-0.sra*
857	@cd tmp && rmdir  SRR1219879 SRR1219880 SRR1257493
858
859	@echo "Downloading kart ordered by size ignoring user repo"
860	@cd tmp && printf "ding 'SRR1219879'\nding 'SRR1219880'\nding 'SRR1257493'"|\
861	 NCBI_SETTINGS=/ VDB_CONFIG=. \
862	 perl ../check-prefetch-out.pl 0 0 \
863      "$(DIRTOTEST)/prefetch --ngc ../data/prj_phs710EA_test.ngc ../data/3-dbGaP-0.krt -os -Cn"
864	@cd tmp && rm     SRR1219879/SRR1219879_dbGaP-0.sra*
865	@cd tmp && rm     SRR1219880/SRR1219880_dbGaP-0.sra*
866	@cd tmp && rm     SRR1257493/SRR1257493_dbGaP-0.sra*
867	@cd tmp && rmdir  SRR1219879 SRR1219880 SRR1257493
868
869	@echo "Downloading kart ordered by kart ignoring user repo"
870	@cd tmp && printf "ding 'SRR1257493'\nding 'SRR1219880'\nding 'SRR1219879'"|\
871	 NCBI_SETTINGS=/ VDB_CONFIG=. \
872	 perl ../check-prefetch-out.pl 0 0 \
873      "$(DIRTOTEST)/prefetch --ngc ../data/prj_phs710EA_test.ngc ../data/3-dbGaP-0.krt -ok -Cn"
874	@rm tmp/SRR1219879/SRR1219879_dbGaP-0.sra*
875	@rm tmp/SRR1219880/SRR1219880_dbGaP-0.sra*
876	@rm tmp/SRR1257493/SRR1257493_dbGaP-0.sra*
877	@cd tmp && rmdir SRR1219879 SRR1219880 SRR1257493
878
879	@rm -r tmp
880
881wgs:
882	@echo Verifying prefetch of runs with WGS references...
883
884	@rm -fr tmp
885	@mkdir  tmp
886
887	@#pwd
888	@echo '/LIBS/GUID = "8test002-6ab7-41b2-bfd0-prefetchpref"' > tmp/k
889
890	@cd tmp && NCBI_SETTINGS=k              $B/prefetch SRR619505  -fy > /dev/null
891	@ls tmp/SRR619505/SRR619505.sra tmp/SRR619505/NC_000005.8 > /dev/null
892	@rm -r tmp/S*
893
894	@echo '/repository/site/disabled = "true"'                 >> tmp/k
895	@echo '/repository/remote/main/SDL.2/resolver-cgi = "https://locate.ncbi.nlm.nih.gov/sdl/2/retrieve"'                 >> tmp/k
896	@echo '/repository/user/main/public/apps/refseq/volumes/refseq = "refseq"' \
897		                                                       >> tmp/k
898	@echo '/repository/user/main/public/apps/wgs/volumes/wgsFlat = "wgs"' >> tmp/k
899	@printf '/repository/user/main/public/root = "%s/tmp"\n' `pwd` >> tmp/k
900	@#cat tmp/k
901
902	@cd tmp && NCBI_SETTINGS=/ VDB_CONFIG=k $B/prefetch SRR619505  -fy > /dev/null
903	@ls tmp/SRR619505/SRR619505.sra tmp/refseq/NC_000005.8    > /dev/null
904	@rm -r tmp/[rS]*
905
906#TODO: TO ADD AD for AAAB01 cd tmp &&                 prefetch SRR353827 -fy -+VFS
907
908	@cd tmp && NCBI_SETTINGS=/ VDB_CONFIG=k $B/prefetch SRR353827  -fy > /dev/null
909	@cd tmp && NCBI_SETTINGS=/ VDB_CONFIG=k $B/align-info SRR353827 \
910		| grep -v 'false,remote::https:'                      > /dev/null
911	@ls tmp/SRR353827/SRR353827.sra tmp/wgs/AAAB01            > /dev/null
912	@rm -r tmp/[wS]*
913	@rm -r tmp
914
915lots_wgs:
916	@echo  Verifying prefetch of run with with a lot of WGS references...
917	@rm -fr tmp
918	@mkdir  tmp
919
920	@#pwd
921	@echo '/LIBS/GUID = "8test002-6ab7-41b2-bfd0-prefetchpref"'            > tmp/k
922	@echo '/repository/site/disabled = "true"'                            >> tmp/k
923	@echo '/repository/remote/main/SDL.2/resolver-cgi = "https://locate.ncbi.nlm.nih.gov/sdl/2/retrieve"'                            >> tmp/k
924	@echo '/repository/user/main/public/apps/refseq/volumes/refseq = "refseq"' \
925		                                                                  >> tmp/k
926	@echo '/repository/user/main/public/apps/wgs/volumes/wgsFlat = "wgs"' >> tmp/k
927	@printf '/repository/user/main/public/root = "%s/tmp"\n' `pwd`        >> tmp/k
928	@#cat tmp/k
929
930	@echo '      ... prefetching...'
931	@cd tmp && NCBI_SETTINGS=/ VDB_CONFIG=k $B/prefetch   ERR3091357 -fy   > /dev/null
932	@echo '      ... align-infoing...'
933	@cd tmp && NCBI_SETTINGS=/ VDB_CONFIG=k $B/align-info ERR3091357 \
934		| grep -v 'false,remote::https:'                      > /dev/null
935	@ls tmp/ERR3091357/ERR3091357.sra tmp/wgs/JTFH01 tmp/refseq/KN707955.1 \
936	                                                          > /dev/null
937
938	@rm -r tmp
939
940resume:
941	@ echo Verifying prefetch resume
942	@ rm   -frv tmp/*
943	@ mkdir -p  tmp
944	@ echo '/LIBS/GUID = "8test002-6ab7-41b2-bfd0-prefetchpref"' > tmp/k
945	@ echo '/repository/site/disabled = "true"'                 >> tmp/k
946	@ cd tmp && PATH=$(B):$(PATH) NCBI_SETTINGS=k perl ../test-resume.pl
947	@ rm    -r  tmp
948
949hs37d5:
950	@ echo Verifying hs37d5
951	@ rm   -frv tmp/*
952	@ mkdir -p  tmp
953	@ cd tmp && NCBI_SETTINGS=k PATH=$(B):$(PATH) perl ../test-hs37d5.pl
954	@ rm    -r  tmp
955
956ad_as_dir: # turned off by default. Library test is in
957           # ncbi-vdb\test\vfs\managertest.cpp::TestVFSManagerCheckAd
958	@ echo we can use AD as dir/...
959	@ mkdir -p tmp
960	@ export NCBI_SETTINGS=/ && export PATH=$(DIRTOTEST):$(PATH) \
961		&& cd tmp && perl ../use-AD-as-dir.pl
962	@ rm -r tmp
963
964dump-vs-prefetch:
965	@ rm -frv tmp/*
966	@ mkdir -pv tmp
967	@ cd tmp && NCBI_SETTINGS=/ NCBI_VDB_NO_ETC_NCBI_KFG=1 PATH=$(B):$(PATH) \
968	                                 perl ../dump-vs-prefetch.pl
969	@ rm -r tmp
970
971quality: std
972	@ echo Testing quality
973	@ mkdir -p tmp
974	@ echo '/LIBS/GUID = "8test002-6ab7-41b2-bfd0-prefetchpref"' > tmp/k
975	@ cd tmp && NCBI_SETTINGS=k PATH=$(DIRTOTEST):$(BINDIR):$(PATH) \
976	  				perl ../test-quality.pl
977	@ rm -r tmp
978