Changeset: 1e897d944e34 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=1e897d944e34
Added Files:
sql/backends/monet5/bam/Tests/bam_lib_mal.mal
sql/backends/monet5/bam/Tests/bam_lib_mal.stable.err
sql/backends/monet5/bam/Tests/bam_lib_mal.stable.out
Removed Files:
sql/backends/monet5/bam/Tests/seq_char.mal
Modified Files:
sql/backends/monet5/bam/Tests/All
sql/backends/monet5/bam/Tests/coverage_usecase.sql
Branch: bamloader
Log Message:
Added some MAL tests for testing the UDFs
diffs (truncated from 360 to 300 lines):
diff --git a/sql/backends/monet5/bam/Tests/All
b/sql/backends/monet5/bam/Tests/All
--- a/sql/backends/monet5/bam/Tests/All
+++ b/sql/backends/monet5/bam/Tests/All
@@ -25,5 +25,6 @@ HAVE_SAMTOOLS?query2.10
HAVE_SAMTOOLS?query2.11
HAVE_SAMTOOLS?query2.12
HAVE_SAMTOOLS?mergetable
+HAVE_SAMTOOLS?bam_lib_mal
HAVE_SAMTOOLS?bam_lib
#HAVE_SAMTOOLS?coverage_usecase
diff --git a/sql/backends/monet5/bam/Tests/bam_lib_mal.mal
b/sql/backends/monet5/bam/Tests/bam_lib_mal.mal
new file mode 100644
--- /dev/null
+++ b/sql/backends/monet5/bam/Tests/bam_lib_mal.mal
@@ -0,0 +1,72 @@
+sht1 := calc.sht(200);
+sht2 := calc.sht(0);
+sht3 := calc.sht(100);
+f := bam.bam_flag(sht1, "segm_unma");
+io.print(f);
+fs := bat.new(:oid, :sht);
+bat.append(fs, sht1);
+bat.append(fs, sht2);
+bat.append(fs, sht3);
+fsb := batbam.bam_flag(fs, "segm_unma");
+io.print(fsb);
+
+seq_rev := bam.reverse_seq("ACGTCGTA");
+io.print(seq_rev);
+seqs := bat.new(:oid, :str);
+bat.append(seqs, seq_rev);
+bat.append(seqs, "TVGHCDMKNYSABWR");
+bat.append(seqs,
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA");
+io.print(seqs);
+seqs_rev := batbam.reverse_seq(seqs);
+io.print(seqs_rev);
+seqs_revrev := batbam.reverse_seq(seqs_rev);
+io.print(seqs_revrev);
+
+qual_rev := bam.reverse_qual("dJwn!@dJ!#jjjnsl");
+io.print(qual_rev);
+quals := bat.new(:oid, :str);
+bat.append(quals, qual_rev);
+bat.append(quals, "dJwn!@dJ!#jjjnsl");
+bat.append(quals, "I_am_a_quality_string_without_a_purpose");
+io.print(quals);
+quals_rev := batbam.reverse_qual(quals);
+io.print(quals_rev);
+quals_revrev := batbam.reverse_qual(quals_rev);
+io.print(quals_revrev);
+
+l := bam.seq_length("100M3I200D5M");
+io.print(l);
+cigars := bat.new(:oid, :str);
+bat.append(cigars, "100M3I200D5M");
+bat.append(cigars, "*");
+ls := batbam.seq_length(cigars);
+io.print(ls);
+
+
+seq_char := bam.seq_char(12, "ACTAGAATGGCT", 5, "3M1I3M1D5M");
+io.print(seq_char);
+sc_seqs := bat.new(:oid, :str);
+sc_poss := bat.new(:oid, :int);
+sc_cgrs := bat.new(:oid, :str);
+bat.append(sc_seqs,
"ATACTTATAGAACAAATGAACCCAAAACCACATAAGGTAAACAACAAAGCTACTGGTTCAAAATTAAGCCTAACTTCAACAGTACCAGGCAAAAACCAT");
+bat.append(sc_seqs,
"TATACTTATAGAACAAATGAACCCAAAACCACATAAGGTAAACAACAAAGCTACTGGTTCAAAATTAAGCCTAACTTCAACAGTACCAGGCAAAAACCAT");
+bat.append(sc_seqs,
"GTACAAAAGTGGGAAATTTTAAAGCTGGGCATCCAGGGGAGACATCACGTGTCAGTAGGTTCCGTGATGCCCCCCAAGCCGCAAAACCAGCAAGTTTTTA");
+bat.append(sc_poss, 17922987);
+bat.append(sc_poss, 18225784);
+bat.append(sc_poss, 18226024);
+bat.append(sc_cgrs, "3=1X1=1X43=1X16=1X33=");
+bat.append(sc_cgrs, "5=1X31=1X62=");
+bat.append(sc_cgrs, "100=");
+io.print(sc_seqs);
+io.print(sc_poss);
+io.print(sc_cgrs);
+i := 17922987;
+res1:bat[:oid,:str] := mal.manifold("bam", "seq_char", i, sc_seqs, sc_poss,
sc_cgrs);
+io.print(res1);
+is := sc_poss;
+res2:bat[:oid,:str] := mal.manifold("bam", "seq_char", is, sc_seqs, sc_poss,
sc_cgrs);
+io.print(res2);
+is := bat.new(:oid, :int);
+bat.append(is, 17922987);
+res3:bat[:oid,:str] := mal.manifold("bam", "seq_char", is, sc_seqs, sc_poss,
sc_cgrs);
+io.print(res3);
diff --git a/sql/backends/monet5/bam/Tests/bam_lib_mal.stable.err
b/sql/backends/monet5/bam/Tests/bam_lib_mal.stable.err
new file mode 100644
--- /dev/null
+++ b/sql/backends/monet5/bam/Tests/bam_lib_mal.stable.err
@@ -0,0 +1,29 @@
+stderr of test 'bam_lib_mal` in directory 'sql/backends/monet5/bam` itself:
+
+
+# 16:51:57 >
+# 16:51:57 > "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set"
"mapi_open=true" "--set" "mapi_port=39916" "--set"
"mapi_usock=/var/tmp/mtest-16560/.s.monetdb.39916" "--set" "monet_prompt="
"--forcemito" "--set" "mal_listing=2"
"--dbpath=/home/robin/MonetDB/PREFIX/var/MonetDB/mTests_sql_backends_monet5_bam"
"bam_lib_mal.mal"
+# 16:51:57 >
+
+# builtin opt gdk_dbpath = /home/robin/MonetDB/PREFIX/var/monetdb5/dbfarm/demo
+# builtin opt gdk_debug = 0
+# builtin opt gdk_vmtrim = no
+# builtin opt monet_prompt = >
+# builtin opt monet_daemon = no
+# builtin opt mapi_port = 50000
+# builtin opt mapi_open = false
+# builtin opt mapi_autosense = false
+# builtin opt sql_optimizer = default_pipe
+# builtin opt sql_debug = 0
+# cmdline opt gdk_nr_threads = 0
+# cmdline opt mapi_open = true
+# cmdline opt mapi_port = 39916
+# cmdline opt mapi_usock = /var/tmp/mtest-16560/.s.monetdb.39916
+# cmdline opt monet_prompt =
+# cmdline opt mal_listing = 2
+# cmdline opt gdk_dbpath =
/home/robin/MonetDB/PREFIX/var/MonetDB/mTests_sql_backends_monet5_bam
+# cmdline opt gdk_debug = 536870922
+
+# 16:51:57 >
+# 16:51:57 > "Done."
+# 16:51:57 >
diff --git a/sql/backends/monet5/bam/Tests/bam_lib_mal.stable.out
b/sql/backends/monet5/bam/Tests/bam_lib_mal.stable.out
new file mode 100644
--- /dev/null
+++ b/sql/backends/monet5/bam/Tests/bam_lib_mal.stable.out
@@ -0,0 +1,187 @@
+stdout of test 'bam_lib_mal` in directory 'sql/backends/monet5/bam` itself:
+
+
+# 16:51:57 >
+# 16:51:57 > "mserver5" "--debug=10" "--set" "gdk_nr_threads=0" "--set"
"mapi_open=true" "--set" "mapi_port=39916" "--set"
"mapi_usock=/var/tmp/mtest-16560/.s.monetdb.39916" "--set" "monet_prompt="
"--forcemito" "--set" "mal_listing=2"
"--dbpath=/home/robin/MonetDB/PREFIX/var/MonetDB/mTests_sql_backends_monet5_bam"
"bam_lib_mal.mal"
+# 16:51:57 >
+
+# MonetDB 5 server v11.20.0
+# This is an unreleased version
+# Serving database 'mTests_sql_backends_monet5_bam', using 4 threads
+# Compiled for x86_64-unknown-linux-gnu/64bit with 64bit OIDs and 128bit
integers dynamically linked
+# Found 7.333 GiB available main-memory.
+# Copyright (c) 1993-July 2008 CWI.
+# Copyright (c) August 2008-2014 MonetDB B.V., all rights reserved
+# Visit http://www.monetdb.org/ for further information
+# Listening for connection requests on mapi:monetdb://robin-xps13:39916/
+# Listening for UNIX domain connection requests on
mapi:monetdb:///var/tmp/mtest-16560/.s.monetdb.39916
+# MonetDB/SQL module loaded
+function user.main():void;
+ sht1 := calc.sht(200);
+ sht2 := calc.sht(0);
+ sht3 := calc.sht(100);
+ f := bam.bam_flag(sht1,"segm_unma");
+ io.print(f);
+ fs := bat.new(:oid,:sht);
+ bat.append(fs,sht1);
+ bat.append(fs,sht2);
+ bat.append(fs,sht3);
+ fsb := batbam.bam_flag(fs,"segm_unma");
+ io.print(fsb);
+ seq_rev := bam.reverse_seq("ACGTCGTA");
+ io.print(seq_rev);
+ seqs := bat.new(:oid,:str);
+ bat.append(seqs,seq_rev);
+ bat.append(seqs,"TVGHCDMKNYSABWR");
+
bat.append(seqs,"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA");
+ io.print(seqs);
+ seqs_rev := batbam.reverse_seq(seqs);
+ io.print(seqs_rev);
+ seqs_revrev := batbam.reverse_seq(seqs_rev);
+ io.print(seqs_revrev);
+ qual_rev := bam.reverse_qual("dJwn!@dJ!#jjjnsl");
+ io.print(qual_rev);
+ quals := bat.new(:oid,:str);
+ bat.append(quals,qual_rev);
+ bat.append(quals,"dJwn!@dJ!#jjjnsl");
+ bat.append(quals,"I_am_a_quality_string_without_a_purpose");
+ io.print(quals);
+ quals_rev := batbam.reverse_qual(quals);
+ io.print(quals_rev);
+ quals_revrev := batbam.reverse_qual(quals_rev);
+ io.print(quals_revrev);
+ l := bam.seq_length("100M3I200D5M");
+ io.print(l);
+ cigars := bat.new(:oid,:str);
+ bat.append(cigars,"100M3I200D5M");
+ bat.append(cigars,"*");
+ ls := batbam.seq_length(cigars);
+ io.print(ls);
+ seq_char := bam.seq_char(12,"ACTAGAATGGCT",5,"3M1I3M1D5M");
+ io.print(seq_char);
+ sc_seqs := bat.new(:oid,:str);
+ sc_poss := bat.new(:oid,:int);
+ sc_cgrs := bat.new(:oid,:str);
+
bat.append(sc_seqs,"ATACTTATAGAACAAATGAACCCAAAACCACATAAGGTAAACAACAAAGCTACTGGTTCAAAATTAAGCCTAACTTCAACAGTACCAGGCAAAAACCAT");
+
bat.append(sc_seqs,"TATACTTATAGAACAAATGAACCCAAAACCACATAAGGTAAACAACAAAGCTACTGGTTCAAAATTAAGCCTAACTTCAACAGTACCAGGCAAAAACCAT");
+
bat.append(sc_seqs,"GTACAAAAGTGGGAAATTTTAAAGCTGGGCATCCAGGGGAGACATCACGTGTCAGTAGGTTCCGTGATGCCCCCCAAGCCGCAAAACCAGCAAGTTTTTA");
+ bat.append(sc_poss,17922987);
+ bat.append(sc_poss,18225784);
+ bat.append(sc_poss,18226024);
+ bat.append(sc_cgrs,"3=1X1=1X43=1X16=1X33=");
+ bat.append(sc_cgrs,"5=1X31=1X62=");
+ bat.append(sc_cgrs,"100=");
+ io.print(sc_seqs);
+ io.print(sc_poss);
+ io.print(sc_cgrs);
+ i := 17922987;
+ res1:bat[:oid,:str] :=
mal.manifold("bam","seq_char",i,sc_seqs,sc_poss,sc_cgrs);
+ io.print(res1);
+ is := sc_poss;
+ res2:bat[:oid,:str] :=
mal.manifold("bam","seq_char",is,sc_seqs,sc_poss,sc_cgrs);
+ io.print(res2);
+ is := bat.new(:oid,:int);
+ bat.append(is,17922987);
+ res3:bat[:oid,:str] :=
mal.manifold("bam","seq_char",is,sc_seqs,sc_poss,sc_cgrs);
+ io.print(res3);
+end main;
+[ false ]
+#--------------------------#
+# h t # name
+# void bit # type
+#--------------------------#
+[ 0@0, false ]
+[ 1@0, false ]
+[ 2@0, true ]
+[ "TACGACGT" ]
+#--------------------------#
+# h t # name
+# void str # type
+#--------------------------#
+[ 0@0, "TACGACGT" ]
+[ 1@0, "TVGHCDMKNYSABWR" ]
+[ 2@0,
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
]
+#--------------------------#
+# h t # name
+# void str # type
+#--------------------------#
+[ 0@0, "ACGTCGTA" ]
+[ 1@0, "YWVTSRNMKHGDCBA" ]
+[ 2@0,
"TTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTT"
]
+#--------------------------#
+# h t # name
+# void str # type
+#--------------------------#
+[ 0@0, "TACGACGT" ]
+[ 1@0, "TVGHCDMKNYSABWR" ]
+[ 2@0,
"AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA"
]
+[ "lsnjjj#!Jd@!nwJd" ]
+#--------------------------#
+# h t # name
+# void str # type
+#--------------------------#
+[ 0@0, "lsnjjj#!Jd@!nwJd" ]
+[ 1@0, "dJwn!@dJ!#jjjnsl" ]
+[ 2@0, "I_am_a_quality_string_without_a_purpose" ]
+#--------------------------#
+# h t # name
+# void str # type
+#--------------------------#
+[ 0@0, "dJwn!@dJ!#jjjnsl" ]
+[ 1@0, "lsnjjj#!Jd@!nwJd" ]
+[ 2@0, "esoprup_a_tuohtiw_gnirts_ytilauq_a_ma_I" ]
+#--------------------------#
+# h t # name
+# void str # type
+#--------------------------#
+[ 0@0, "lsnjjj#!Jd@!nwJd" ]
+[ 1@0, "dJwn!@dJ!#jjjnsl" ]
+[ 2@0, "I_am_a_quality_string_without_a_purpose" ]
+[ 305 ]
+#--------------------------#
+# h t # name
+# void int # type
+#--------------------------#
+[ 0@0, 305 ]
+[ 1@0, -1 ]
+[ "T" ]
+#--------------------------#
+# h t # name
+# void str # type
+#--------------------------#
+[ 0@0,
"ATACTTATAGAACAAATGAACCCAAAACCACATAAGGTAAACAACAAAGCTACTGGTTCAAAATTAAGCCTAACTTCAACAGTACCAGGCAAAAACCAT"
]
+[ 1@0,
"TATACTTATAGAACAAATGAACCCAAAACCACATAAGGTAAACAACAAAGCTACTGGTTCAAAATTAAGCCTAACTTCAACAGTACCAGGCAAAAACCAT"
]
+[ 2@0,
"GTACAAAAGTGGGAAATTTTAAAGCTGGGCATCCAGGGGAGACATCACGTGTCAGTAGGTTCCGTGATGCCCCCCAAGCCGCAAAACCAGCAAGTTTTTA"
]
+#--------------------------#
+# h t # name
+# void int # type
+#--------------------------#
+[ 0@0, 17922987 ]
+[ 1@0, 18225784 ]
+[ 2@0, 18226024 ]
+#--------------------------#
+# h t # name
+# void str # type
+#--------------------------#
+[ 0@0, "3=1X1=1X43=1X16=1X33=" ]
+[ 1@0, "5=1X31=1X62=" ]
+[ 2@0, "100=" ]
+#--------------------------#
+# h t # name
+# void str # type
+#--------------------------#
+[ 0@0, "A" ]
+[ 1@0, nil ]
_______________________________________________
checkin-list mailing list
[email protected]
https://www.monetdb.org/mailman/listinfo/checkin-list