Package com.taobao.tdhs.jdbc.test.mybatis

Source Code of com.taobao.tdhs.jdbc.test.mybatis.TestBase

/*
* Copyright(C) 2011-2012 Alibaba Group Holding Limited
*
*  This program is free software; you can redistribute it and/or modify
*  it under the terms of the GNU General Public License version 2 as
*  published by the Free Software Foundation.
*
*  Authors:
*    wentong <wentong@taobao.com>
*/

package com.taobao.tdhs.jdbc.test.mybatis;

import com.taobao.tdhs.jdbc.test.mybatis.mapper.OrderMapper;
import com.taobao.tdhs.jdbc.test.mybatis.mapper.PersonMapper;
import com.taobao.tdhs.jdbc.test.mybatis.mapper.TestMapper;
import org.apache.ibatis.mapping.Environment;
import org.apache.ibatis.session.Configuration;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.apache.ibatis.transaction.TransactionFactory;
import org.apache.ibatis.transaction.jdbc.JdbcTransactionFactory;
import org.junit.Ignore;

import javax.sql.DataSource;
import java.util.List;

import static org.junit.Assert.assertEquals;

/**
* @author <a href="mailto:wentong@taobao.com">ζ–‡ι€š</a>
* @since 12-3-23 上午10:32
*/
@Ignore
public abstract class TestBase extends com.taobao.tdhs.jdbc.test.TestBase {

    protected SqlSession getMySQLSession() {
        return createSession(new MySQLDataSource());
    }

    protected SqlSession getTDHSSession() {
        return createSession(new TDHSDataSource());
    }


    private SqlSession createSession(DataSource dataSource) {
        TransactionFactory transactionFactory = new JdbcTransactionFactory();
        Environment environment = new Environment("development", transactionFactory, dataSource);
        Configuration configuration = new Configuration(environment);
        configuration.addMapper(PersonMapper.class);
        configuration.addMapper(TestMapper.class);
        configuration.addMapper(OrderMapper.class);
        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(configuration);
        return sqlSessionFactory.openSession();
    }

    protected <T> void compareRecord(List<T> mysqlRecord, List<T> tdhsRrcord) {
        assertEquals(mysqlRecord.size(), tdhsRrcord.size());
        for (int i = 0; i < mysqlRecord.size(); i++) {
            assertEquals(mysqlRecord.get(i), tdhsRrcord.get(i));
        }
    }

    protected <T> void compareRecord(T[] mysqlRecord, List<T> tdhsRrcord) {
        assertEquals(mysqlRecord.length, tdhsRrcord.size());
        for (int i = 0; i < mysqlRecord.length; i++) {
            assertEquals(mysqlRecord[i], tdhsRrcord.get(i));
        }
    }


}
TOP

Related Classes of com.taobao.tdhs.jdbc.test.mybatis.TestBase

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.