1
0
mirror of https://github.com/gnosygnu/xowa.git synced 2026-03-02 03:49:30 +00:00
This commit is contained in:
gnosygnu
2015-01-25 20:56:50 -05:00
parent 1b0042ef8a
commit efaf9dcd00
447 changed files with 10258 additions and 3016 deletions

View File

@@ -16,29 +16,29 @@ You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package gplx.dbs.joins; import gplx.*; import gplx.dbs.*;
import org.junit.*;
import org.junit.*; import gplx.dbs.sqls.*;
public abstract class Joins_base_tst {
protected Db_provider provider;
protected Db_conn conn;
@Before public void setup() {
provider = provider_();
Db_qry_delete.new_().BaseTable_("dbs_crud_ops").Exec_qry(provider);
Db_qry_delete.new_().BaseTable_("dbs_join1").Exec_qry(provider);
conn = provider_();
Db_qry_delete.new_("dbs_crud_ops").Exec_qry(conn);
Db_qry_delete.new_("dbs_join1").Exec_qry(conn);
}
@After public void teardown() {
provider.Conn_term();
conn.Conn_term();
}
protected void InnerJoin_hook() {
provider.Exec_qry(Db_qry_insert.new_().BaseTable_("dbs_crud_ops").Arg_("id", 0).Arg_("name", "me"));
provider.Exec_qry(Db_qry_insert.new_().BaseTable_("dbs_crud_ops").Arg_("id", 1).Arg_("name", "you"));
provider.Exec_qry(Db_qry_insert.new_().BaseTable_("dbs_join1").Arg_("join_id", 0).Arg_("join_data", "data0"));
provider.Exec_qry(Db_qry_insert.new_().BaseTable_("dbs_join1").Arg_("join_id", 1).Arg_("join_data", "data1"));
conn.Exec_qry(new Db_qry_insert("dbs_crud_ops").Arg_("id", 0).Arg_("name", "me"));
conn.Exec_qry(new Db_qry_insert("dbs_crud_ops").Arg_("id", 1).Arg_("name", "you"));
conn.Exec_qry(new Db_qry_insert("dbs_join1").Arg_("join_id", 0).Arg_("join_data", "data0"));
conn.Exec_qry(new Db_qry_insert("dbs_join1").Arg_("join_id", 1).Arg_("join_data", "data1"));
Db_qry_select select = Db_qry_select.new_().From_("dbs_crud_ops").Join_("dbs_join1", "j1", Sql_join_itm.new_("join_id", "dbs_crud_ops", "id")).Cols_("id", "name", "join_data");
DataRdr rdr = provider.Exec_qry_as_rdr(select);
DataRdr rdr = conn.Exec_qry_as_rdr(select);
GfoNde table = GfoNde_.rdr_(rdr);
Tfds.Eq(table.Subs().Count(), 2);
Tfds.Eq(table.Subs().FetchAt_asGfoNde(0).Read("join_data"), "data0");
Tfds.Eq(table.Subs().FetchAt_asGfoNde(1).Read("join_data"), "data1");
}
protected abstract Db_provider provider_();
protected abstract Db_conn provider_();
}

View File

@@ -18,7 +18,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
package gplx.dbs.joins; import gplx.*; import gplx.dbs.*;
import org.junit.*;
public class Joins_tdb_tst extends Joins_base_tst {
@Override protected Db_provider provider_() {return Db_provider_fxt.Tdb("120_dbs_joins.dsv");}
@Override protected Db_conn provider_() {return Db_conn_fxt.Tdb("120_dbs_joins.dsv");}
@Test public void InnerJoin() {
try {
InnerJoin_hook();