Changeset: 7663ed65f293 for MonetDB URL: https://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=7663ed65f293 Added Files: monetdb5/modules/mosaic/Tests/mosaic_lng_1.mal monetdb5/modules/mosaic/Tests/mosaic_lng_1.raw.MAL.py monetdb5/modules/mosaic/Tests/mosaic_lng_1.raw.stable.err monetdb5/modules/mosaic/Tests/mosaic_lng_1.raw.stable.out monetdb5/modules/mosaic/Tests/run_mal_client.py Removed Files: monetdb5/modules/mosaic/Tests/mosaic_raw_lng.malC monetdb5/modules/mosaic/Tests/mosaic_raw_lng.stable.err monetdb5/modules/mosaic/Tests/mosaic_raw_lng.stable.out Modified Files: monetdb5/modules/mosaic/Tests/All Branch: mosaic Log Message:
Introduce a Python mini test framework for Mosaic MAL tests: This framework will help to deduplicate lots of test script code due to testing the same input under different compression techniques. diffs (truncated from 7417 to 300 lines): diff --git a/monetdb5/modules/mosaic/Tests/All b/monetdb5/modules/mosaic/Tests/All --- a/monetdb5/modules/mosaic/Tests/All +++ b/monetdb5/modules/mosaic/Tests/All @@ -27,7 +27,7 @@ mosaic_prefix_joins mosaic_mix_joins mosaic_raw_bit -mosaic_raw_lng +mosaic_lng_1.raw mosaic_raw_oid mosaic_raw_date mosaic_raw_timestamp diff --git a/monetdb5/modules/mosaic/Tests/mosaic_lng_1.mal b/monetdb5/modules/mosaic/Tests/mosaic_lng_1.mal new file mode 100644 --- /dev/null +++ b/monetdb5/modules/mosaic/Tests/mosaic_lng_1.mal @@ -0,0 +1,687 @@ +a:= bat.new(:lng); +bat.append(a,1000:lng); +bat.append(a,1001:lng); +bat.append(a,999:lng); +bat.append(a,1002:lng); +bat.append(a,998:lng); +bat.append(a,1010:lng); +bat.append(a,990:lng); +bat.append(a,995:lng); +bat.append(a,1005:lng); +bat.append(a,1002:lng); +bat.append(a,1000:lng); +bat.append(a,1001:lng); +bat.append(a,999:lng); +bat.append(a,1002:lng); +bat.append(a,998:lng); +bat.append(a,1010:lng); +bat.append(a,990:lng); +bat.append(a,995:lng); +bat.append(a,1005:lng); +bat.append(a,1002:lng); +bat.append(a,1000:lng); +bat.append(a,1001:lng); +bat.append(a,999:lng); +bat.append(a,1002:lng); +bat.append(a,998:lng); +bat.append(a,1010:lng); +bat.append(a,990:lng); +bat.append(a,995:lng); +bat.append(a,1005:lng); +bat.append(a,1002:lng); +mosaic.compress(a,"{compression_type}"); +c:= mosaic.decompress(a); +io.print(a, c); + +sa:= algebra.select(a,nil:lng, nil:lng,false,false,false); +sc:= mosaic.select (c,nil:lng, nil:lng,false,false,false); +io.print(sa, sc); + +sa:= algebra.select(a,nil:lng, nil:lng,false,false,true); +sc:= mosaic.select (c,nil:lng, nil:lng,false,false,true); +io.print(sa, sc); + +sa:= algebra.select(a,1000:lng, nil:lng,false,false,false); +sc:= mosaic.select (c,1000:lng, nil:lng,false,false,false); +tsa:= algebra.thetaselect(a,1000:lng, ">"); +tsc:= mosaic.thetaselect (c,1000:lng, ">"); +io.print(sa, sc, tsa, tsc); + +sa:= algebra.select(a,nil:lng, 1000:lng,false,false,false); +sc:= mosaic.select (c,nil:lng, 1000:lng,false,false,false); +tsa:= algebra.thetaselect(a,1000:lng, "<"); +tsc:= mosaic.thetaselect (c,1000:lng, "<"); +io.print(sa, sc, tsa, tsc); + +sa:= algebra.select(a,900:lng, nil:lng,false,false,false); +sc:= mosaic.select (c,900:lng, nil:lng,false,false,false); +tsa:= algebra.thetaselect(a,900:lng, ">"); +tsc:= mosaic.thetaselect (c,900:lng, ">"); +io.print(sa, sc, tsa, tsc); + +sa:= algebra.select(a,nil:lng, 900:lng,false,false,false); +sc:= mosaic.select (c,nil:lng, 900:lng,false,false,false); +tsa:= algebra.thetaselect(a,900:lng, "<"); +tsc:= mosaic.thetaselect (c,900:lng, "<"); +#io.print(sa, sc, tsa, tsc); + +sa:= algebra.select(a,900:lng, nil:lng,true,false,false); +sc:= mosaic.select (c,900:lng, nil:lng,true,false,false); +tsa:= algebra.thetaselect(a,900:lng, ">="); +tsc:= mosaic.thetaselect (c,900:lng, ">="); +io.print(sa, sc, tsa, tsc); + +sa:= algebra.select(a,nil:lng, 900:lng,false,true,false); +sc:= mosaic.select (c,nil:lng, 900:lng,false,true,false); +tsa:= algebra.thetaselect(a,900:lng, "<="); +tsc:= mosaic.thetaselect (c,900:lng, "<="); +io.print(sa, sc, tsa, tsc); + +sa:= algebra.select(a,1000:lng, nil:lng,true,false,false); +sc:= mosaic.select (c,1000:lng, nil:lng,true,false,false); +tsa:= algebra.thetaselect(a,1000:lng, ">="); +tsc:= mosaic.thetaselect (c,1000:lng, ">="); +io.print(sa, sc, tsa, tsc); + +sa:= algebra.select(a,nil:lng, 1000:lng,false,true,false); +sc:= mosaic.select (c,nil:lng, 1000:lng,false,true,false); +tsa:= algebra.thetaselect(a,1000:lng, "<="); +tsc:= mosaic.thetaselect (c,1000:lng, "<="); +io.print(sa, sc, tsa, tsc); + +sa:= algebra.select(a,1000:lng, 1000:lng,true,true,false); +sc:= mosaic.select (c,1000:lng, 1000:lng,true,true,false); +tsa:= algebra.thetaselect(a,1000:lng, "=="); +tsc:= mosaic.thetaselect (c,1000:lng, "=="); +io.print(sa, sc, tsa, tsc); + +sa:= algebra.select(a,1000:lng, 1000:lng,true,true,true); +sc:= mosaic.select (c,1000:lng, 1000:lng,true,true,true); +tsa:= algebra.thetaselect(a,1000:lng, "!="); +tsc:= mosaic.thetaselect (c,1000:lng, "!="); +io.print(sa, sc, tsa, tsc); + + +sa:= algebra.select(a,1003:lng, 1003:lng,true,true,false); +sc:= mosaic.select (c,1003:lng, 1003:lng,true,true,false); +tsa:= algebra.thetaselect(a,1003:lng, "=="); +tsc:= mosaic.thetaselect (c,1003:lng, "=="); +io.print(sa, sc, tsa, tsc); + +sa:= algebra.select(a,1003:lng, 1003:lng,true,true,true); +sc:= mosaic.select (c,1003:lng, 1003:lng,true,true,true); +tsa:= algebra.thetaselect(a,1003:lng, "!="); +tsc:= mosaic.thetaselect (c,1003:lng, "!="); +io.print(sa, sc, tsa, tsc); + +sa:= algebra.select(a,900:lng, 900:lng,true,true,false); +sc:= mosaic.select (c,900:lng, 900:lng,true,true,false); +tsa:= algebra.thetaselect(a,900:lng, "=="); +tsc:= mosaic.thetaselect (c,900:lng, "=="); +io.print(sa, sc, tsa, tsc); + +sa:= algebra.select(a,900:lng, 900:lng,true,true,true); +sc:= mosaic.select (c,900:lng, 900:lng,true,true,true); +tsa:= algebra.thetaselect(a,900:lng, "!="); +tsc:= mosaic.thetaselect (c,900:lng, "!="); +io.print(sa, sc, tsa, tsc); + +sa:= algebra.select(a,1100:lng, 1100:lng,true,true,false); +sc:= mosaic.select (c,1100:lng, 1100:lng,true,true,false); +tsa:= algebra.thetaselect(a,1100:lng, "=="); +tsc:= mosaic.thetaselect (c,1100:lng, "=="); +io.print(sa, sc, tsa, tsc); + +sa:= algebra.select(a,1100:lng, 1100:lng,true,true,true); +sc:= mosaic.select (c,1100:lng, 1100:lng,true,true,true); +tsa:= algebra.thetaselect(a,1100:lng, "!="); +tsc:= mosaic.thetaselect (c,1100:lng, "!="); +io.print(sa, sc, tsa, tsc); + +sa:= algebra.select(a,991:lng, 1005:lng,true,true,false); +sc:= mosaic.select (c,991:lng, 1005:lng,true,true,false); +io.print(sa, sc); + +sa:= algebra.select(a,999:lng, 1005:lng,true,true,false); +sc:= mosaic.select (c,999:lng, 1005:lng,true,true,false); +io.print(sa, sc); + +sa:= algebra.select(a,991:lng, 1008:lng,true,true,false); +sc:= mosaic.select (c,991:lng, 1008:lng,true,true,false); +io.print(sa, sc); + +sa:= algebra.select(a,999:lng, 1008:lng,true,true,false); +sc:= mosaic.select (c,999:lng, 1008:lng,true,true,false); +io.print(sa, sc); + +sa:= algebra.select(a,991:lng, 1005:lng,false,true,false); +sc:= mosaic.select (c,991:lng, 1005:lng,false,true,false); +io.print(sa, sc); + +sa:= algebra.select(a,999:lng, 1005:lng,false,true,false); +sc:= mosaic.select (c,999:lng, 1005:lng,false,true,false); +io.print(sa, sc); + +sa:= algebra.select(a,991:lng, 1008:lng,false,true,false); +sc:= mosaic.select (c,991:lng, 1008:lng,false,true,false); +io.print(sa, sc); + +sa:= algebra.select(a,999:lng, 1008:lng,false,true,false); +sc:= mosaic.select (c,999:lng, 1008:lng,false,true,false); +io.print(sa, sc); + +sa:= algebra.select(a,991:lng, 1005:lng,true,false,false); +sc:= mosaic.select (c,991:lng, 1005:lng,true,false,false); +io.print(sa, sc); + +sa:= algebra.select(a,999:lng, 1005:lng,true,false,false); +sc:= mosaic.select (c,999:lng, 1005:lng,true,false,false); +io.print(sa, sc); + +sa:= algebra.select(a,991:lng, 1008:lng,true,false,false); +sc:= mosaic.select (c,991:lng, 1008:lng,true,false,false); +io.print(sa, sc); + +sa:= algebra.select(a,999:lng, 1008:lng,true,false,false); +sc:= mosaic.select (c,999:lng, 1008:lng,true,false,false); +io.print(sa, sc); + +sa:= algebra.select(a,991:lng, 1005:lng,false,false,false); +sc:= mosaic.select (c,991:lng, 1005:lng,false,false,false); +io.print(sa, sc); + +sa:= algebra.select(a,999:lng, 1005:lng,false,false,false); +sc:= mosaic.select (c,999:lng, 1005:lng,false,false,false); +io.print(sa, sc); + +sa:= algebra.select(a,991:lng, 1008:lng,false,false,false); +sc:= mosaic.select (c,991:lng, 1008:lng,false,false,false); +io.print(sa, sc); + +sa:= algebra.select(a,999:lng, 1008:lng,false,false,false); +sc:= mosaic.select (c,999:lng, 1008:lng,false,false,false); +io.print(sa, sc); + +sa:= algebra.select(a,991:lng, 1005:lng,true,true,true); +sc:= mosaic.select (c,991:lng, 1005:lng,true,true,true); +io.print(sa, sc); + +sa:= algebra.select(a,999:lng, 1005:lng,true,true,true); +sc:= mosaic.select (c,999:lng, 1005:lng,true,true,true); +io.print(sa, sc); + +sa:= algebra.select(a,991:lng, 1008:lng,true,true,true); +sc:= mosaic.select (c,991:lng, 1008:lng,true,true,true); +io.print(sa, sc); + +sa:= algebra.select(a,999:lng, 1008:lng,true,true,true); +sc:= mosaic.select (c,999:lng, 1008:lng,true,true,true); +io.print(sa, sc); + +sa:= algebra.select(a,991:lng, 1005:lng,false,true,true); +sc:= mosaic.select (c,991:lng, 1005:lng,false,true,true); +io.print(sa, sc); + +sa:= algebra.select(a,999:lng, 1005:lng,false,true,true); +sc:= mosaic.select (c,999:lng, 1005:lng,false,true,true); +io.print(sa, sc); + +sa:= algebra.select(a,991:lng, 1008:lng,false,true,true); +sc:= mosaic.select (c,991:lng, 1008:lng,false,true,true); +io.print(sa, sc); + +sa:= algebra.select(a,999:lng, 1008:lng,false,true,true); +sc:= mosaic.select (c,999:lng, 1008:lng,false,true,true); +io.print(sa, sc); + +sa:= algebra.select(a,991:lng, 1005:lng,true,false,true); +sc:= mosaic.select (c,991:lng, 1005:lng,true,false,true); +io.print(sa, sc); + +sa:= algebra.select(a,999:lng, 1005:lng,true,false,true); +sc:= mosaic.select (c,999:lng, 1005:lng,true,false,true); +io.print(sa, sc); + +sa:= algebra.select(a,991:lng, 1008:lng,true,false,true); +sc:= mosaic.select (c,991:lng, 1008:lng,true,false,true); +io.print(sa, sc); + +sa:= algebra.select(a,999:lng, 1008:lng,true,false,true); +sc:= mosaic.select (c,999:lng, 1008:lng,true,false,true); +io.print(sa, sc); + +sa:= algebra.select(a,991:lng, 1005:lng,false,false,true); +sc:= mosaic.select (c,991:lng, 1005:lng,false,false,true); +io.print(sa, sc); + +sa:= algebra.select(a,999:lng, 1005:lng,false,false,true); +sc:= mosaic.select (c,999:lng, 1005:lng,false,false,true); +io.print(sa, sc); + +sa:= algebra.select(a,991:lng, 1008:lng,false,false,true); +sc:= mosaic.select (c,991:lng, 1008:lng,false,false,true); +io.print(sa, sc); + +sa:= algebra.select(a,999:lng, 1008:lng,false,false,true); +sc:= mosaic.select (c,999:lng, 1008:lng,false,false,true); +io.print(sa, sc); + +sa:= algebra.select(a,980:lng, 1005:lng,true,true,false); +sc:= mosaic.select (c,980:lng, 1005:lng,true,true,false); +io.print(sa, sc); + +sa:= algebra.select(a,980:lng, 1005:lng,true,true,false); +sc:= mosaic.select (c,980:lng, 1005:lng,true,true,false); +io.print(sa, sc); + +sa:= algebra.select(a,980:lng, 1008:lng,true,true,false); +sc:= mosaic.select (c,980:lng, 1008:lng,true,true,false); +io.print(sa, sc); + +sa:= algebra.select(a,999:lng, 1008:lng,true,true,false); +sc:= mosaic.select (c,999:lng, 1008:lng,true,true,false); +io.print(sa, sc); _______________________________________________ checkin-list mailing list checkin-list@monetdb.org https://www.monetdb.org/mailman/listinfo/checkin-list