Skip to content
This repository has been archived by the owner on Nov 20, 2019. It is now read-only.

Commit

Permalink
[CROSSDATA-686][testsAT]Added tests for count distinct and crossjoin
Browse files Browse the repository at this point in the history
  • Loading branch information
hdominguez-stratio committed Oct 28, 2016
1 parent 4fac21a commit ed7150c
Show file tree
Hide file tree
Showing 3 changed files with 62 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -53,11 +53,13 @@ public void setUp() {
logger.info("Connecting to Cassandra Cluster");
cassandra.connect();
logger.info("Checking if the catalog exists");
if (cassandra.existsKeyspace(catalog, false)) {
if (cassandra.existsKeyspace(catalog, false) || cassandra.existsKeyspace("databasetest", false) ) {
logger.info("The catalog exists");
cassandra.executeQuery("DROP KEYSPACE \"KUYA\"");
cassandra.executeQuery("DROP KEYSPACE databasetest");
logger.info("The catalog has benn dropped");
}

cassandra.loadTestData(catalog, "/scripts/CassandraMicroScript.cql");
List<String> tables = cassandra.getTables(catalog);
String connector = "Cassandra-Micro";
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -24,8 +24,50 @@ Feature: [CROSSDATA-677] Microstrategy - Tests Queries
When I execute 'select a11.DES_PRODMDV DES_PRODMDV,a11.COD_SEMAMES COD_SEMAMES,a11.DES_DTMM DES_DTMM,a11.DES_CBCMM DES_CBCMM,a11.DES_ZOMM DES_ZOMM,a11.DES_OFIMM DES_OFIMM,a11.DES_NIVMM DES_NIVMM,a11.COD_DATIMP COD_BANCSB,max(a11.COD_OFIMM) COD_OFICI,max(a11.DES_OFIPA) DES_OFIPA,max(a11.COD_BANCSBM) COD_BANCSB0,a11.DES_UNIMMDV DES_UNIMMDV,a11.DES_EVENMDV DES_EVENMDV,a11.COD_CONTIGO COD_CONTIGO,max(a12.DES_CONTIGO) DES_CONTIGO,max(a12.COD_ORDCONTI) COD_ORDCONTI,sum(a11.IMP_BASINCRE) WJXBFS1,sum(a11.IMP_BASTRANS) WJXBFS2,sum(a11.IMP_REINCRE) WJXBFS3,sum(a11.IMP_RETRANSA) WJXBFS4,sum(a11.QNU_TOPRODUC) WJXBFS5 from KUYA.TKUYAKPR a11 join KUYA.TKUYAKGO a12 on (a11.COD_CONTIGO = a12.COD_CONTIGO) where (a11.COD_SEMAMES in ('8.20a26JUN') and ((a11.COD_BANCSBM = '0182' and (a11.DES_OFIPA like '%0013%' or a11.COD_OFIMM = '0013')) or (a11.COD_BANCSBM = '0182' and (a11.DES_OFIPA like '%6051%' or a11.COD_OFIMM = '6051')))) group by a11.DES_PRODMDV,a11.COD_SEMAMES,a11.DES_DTMM,a11.DES_CBCMM,a11.DES_ZOMM,a11.DES_OFIMM,a11.DES_NIVMM,a11.COD_DATIMP,a11.DES_UNIMMDV,a11.DES_EVENMDV,a11.COD_CONTIGO'
Then an exception 'IS NOT' thrown

Scenario: [CROSSDATA-728] MICRO SELECT COUNT(DISTINCT * )
When I execute 'SELECT count(distinct ident) FROM databasetest.tabletest'
Then an exception 'IS NOT' thrown
Then The result has to have '1' rows
|_c0-long|
| 10 |

Scenario: [CROSSDATA-728] MICRO SELECT COUNT(DISTINCT * ) with alias
When I execute 'SELECT count(distinct ident) as count_distinct FROM databasetest.tabletest'
Then an exception 'IS NOT' thrown
Then The result has to have '1' rows
|count_distinct-long|
| 10 |

Scenario: [CROSSDATA-728] MICRO SELECT COUNT(DISTINCT * ) with alias
When I execute 'SELECT count(distinct ident) as count_distinct FROM databasetest.tabletest WHERE ident > 4'
Then an exception 'IS NOT' thrown
Then The result has to have '1' rows
|count_distinct-long|
| 5 |


Scenario: [CROSSDATA-717] MICRO SELECT + CROSS JOIN
When I execute 'SELECT tabletest.ident ,tab1.name FROM databasetest.tabletest CROSS JOIN databasetest.tab1'
Then an exception 'IS NOT' thrown
Then The result has to have '20' rows
|ident-integer| name-string|
| 5 |name_5 |
| 5 |name_5 |
| 1 |name_1 |
| 1 |name_1 |
| 8 |name_8 |
| 8 |name_8 |
| 0 |name_0 |
| 0 |name_0 |
| 2 |name_2 |
| 2 |name_2 |
| 4 |name_4 |
| 4 |name_4 |
| 7 |name_7 |
| 7 |name_7 |
| 6 |name_6 |
| 6 |name_6 |
| 9 |name_9 |
| 9 |name_9 |
| 3 |name_3 |
| 3 |name_3 |

17 changes: 16 additions & 1 deletion testsAT/src/test/resources/scripts/CassandraMicroScript.cql
Original file line number Diff line number Diff line change
Expand Up @@ -13,4 +13,19 @@ insert into "KUYA"."TKUYAKCL"("COD_PERSOCL","COD_OFIPALCL","DES_SUBSEGLO","COD_B
insert into "KUYA"."TKUYAKCL"("COD_PERSOCL","COD_OFIPALCL","DES_SUBSEGLO","COD_BANCSBM","IMP_TRANINI","IMP_TRANFIN","IMP_VENTCRUZ","IMP_OBJPROP","COD_SEMAMES","COD_IDFISCAK","DES_NOCLIE","DES_BANMM","DES_EVENMDV","DES_UNIMMDV","DES_NIVMM","DES_DTMM","DES_ZOMM","DES_CBCMM","DES_OFIMM","COD_DATIMP","COD_TPVCL","COD_TARJECL","COD_RECIBCL","COD_EMIRECIB","COD_COMEX","COD_INGRESCL","COD_NETCL","COD_MOVIL","COD_MAILCL","COD_SEGUROS","COD_CNIVELCL","DES_OFIPA","AUD_TIM","COD_CONTIGO") VALUES ('eee','0016','eee','6051',5,5,5,5,'8.20a26JUN','eee','eee','eee','eee','eee','eee','eee','eee','eee','eee','eee',5,5,5,5,5,5,5,5,5,5,5,'060510','13-09-16 15:00',5);
CREATE TABLE "KUYA"."TKUYAKEV"("COD_SEMAMES" varchar PRIMARY KEY,"DES_UNIREF" varchar,"DES_EVENMDV" varchar,"IMP_RETRANSA" int,"IMP_REINCRE" int,"DES_BANMM" varchar,"DES_UNIMMDV"varchar,"DES_NIVMM" VARCHAR,"DES_DTMM" varchar,"DES_ZOMM" varchar,"DES_CBCMM" varchar,"DES_OFIMM" varchar,"COD_DATIMP"varchar,"IMP_BASTRANS" int,"IMP_BASINCRE" int,"IMP_BATRAINI" int,"IMP_CUMPLIMI" int,"QNU_BASEVMDV" int,"DES_OFIPA" varchar,"DES_SEGCLM" varchar,"COD_BANCSBM" varchar,"COD_OFIMM" varchar,"DES_EVENCORT" varchar,"AUD_TIM" TIMESTAMP,"COD_CONTIGO" int);
CREATE TABLE "KUYA"."TKUYAKSE"("COD_SEMAMES" VARCHAR PRIMARY KEY, "DES_UNIREF" varchar, "DES_EVENMDV" varchar, "QNU_RENUMMDV" int, "IMP_RECUMPLI" int, "IMP_RETRANSA" int, "IMP_RETRAINI" int, "IMP_REINCRE" int, "QNU_BASEVMDV" int, "IMP_BASTRANS" int, "IMP_BATRAINI" int, "IMP_OBJPROP" int, "IMP_BASINCRE" int, "DES_BANMM" varchar, "IMP_CUMPLIMI" int, "DES_UNIMMDV" varchar, "DES_NIVMM" varchar, "DES_DTMM" varchar, "DES_ZOMM" varchar, "DES_CBCMM" varchar, "DES_OFIMM" varchar, "COD_DATIMP" varchar, "QNU_RAKEVMDV" int, "QNU_RAKNICON" int, "QNU_RAKTRANS" int, "QNU_INCRETO" int, "DES_OFIPA" varchar, "QNU_RANKMAX" int, "DES_SEGCLM" varchar, "COD_BANCSBM" varchar, "COD_OFIMM" varchar, "DES_EVENCORT" varchar, "AUD_TIM" TIMESTAMP, "COD_CONTIGO" int);
CREATE TABLE "KUYA"."TKUYAKPR" ("COD_SEMAMES" varchar primary key, "DES_UNIREF" varchar, "DES_EVENMDV" varchar, "IMP_RETRANSA" int, "IMP_REINCRE" int, "DES_BANMM" varchar, "DES_PRODMDV" varchar, "DES_UNIMMDV" varchar, "DES_NIVMM" VARCHAR, "DES_DTMM" varchar, "DES_ZOMM" varchar, "DES_CBCMM" varchar, "DES_OFIMM" varchar, "COD_DATIMP" varchar, "IMP_BASTRANS" int, "IMP_BASINCRE" int, "QNU_TOPRODUC" int, "DES_OFIPA" varchar, "COD_BANCSBM" varchar, "COD_OFIMM" varchar, "DES_EVENCORT" varchar, "AUD_TIM" TIMESTAMP, "COD_CONTIGO" int);
CREATE TABLE "KUYA"."TKUYAKPR" ("COD_SEMAMES" varchar primary key, "DES_UNIREF" varchar, "DES_EVENMDV" varchar, "IMP_RETRANSA" int, "IMP_REINCRE" int, "DES_BANMM" varchar, "DES_PRODMDV" varchar, "DES_UNIMMDV" varchar, "DES_NIVMM" VARCHAR, "DES_DTMM" varchar, "DES_ZOMM" varchar, "DES_CBCMM" varchar, "DES_OFIMM" varchar, "COD_DATIMP" varchar, "IMP_BASTRANS" int, "IMP_BASINCRE" int, "QNU_TOPRODUC" int, "DES_OFIPA" varchar, "COD_BANCSBM" varchar, "COD_OFIMM" varchar, "DES_EVENCORT" varchar, "AUD_TIM" TIMESTAMP, "COD_CONTIGO" int);
CREATE KEYSPACE databasetest WITH REPLICATION = { 'class' : 'SimpleStrategy', 'replication_factor' : 3 };
CREATE TABLE databasetest.tabletest(ident INT PRIMARY KEY, name TEXT, money DOUBLE, new BOOLEAN, date Timestamp);
INSERT INTO databasetest.tabletest(ident,name,money,new,date) VALUES (0, 'name_0', 10.2 ,true,'1999-11-30');
INSERT INTO databasetest.tabletest(ident,name,money,new,date) VALUES (1, 'name_1', 11.2 ,true,'2001-01-01');
INSERT INTO databasetest.tabletest(ident,name,money,new,date) VALUES (2, 'name_2', 12.2 ,true,'2002-02-02');
INSERT INTO databasetest.tabletest(ident,name,money,new,date) VALUES (3, 'name_3', 13.2 ,true,'2003-03-03');
INSERT INTO databasetest.tabletest(ident,name,money,new,date) VALUES (4, 'name_4', 14.2 ,true,'2004-04-04');
INSERT INTO databasetest.tabletest(ident,name,money,new,date) VALUES (5, 'name_5', 15.2 ,true,'2005-05-05');
INSERT INTO databasetest.tabletest(ident,name,money,new,date) VALUES (6, 'name_6', 16.2 ,true,'2006-06-06');
INSERT INTO databasetest.tabletest(ident,name,money,new,date) VALUES (7, 'name_7', 17.2 ,true,'2007-07-07');
INSERT INTO databasetest.tabletest(ident,name,money,new,date) VALUES (8, 'name_8', 18.2 ,true,'2008-08-08');
INSERT INTO databasetest.tabletest(ident,name,money,new,date) VALUES (9, 'name_9', 19.2 ,true,'2009-09-09');
CREATE TABLE databasetest.tab1(name TEXT PRIMARY KEY);
INSERT INTO databasetest.tab1(name) VALUES ('name_0');
INSERT INTO databasetest.tab1(name) VALUES ('name_1');

0 comments on commit ed7150c

Please sign in to comment.