package com.alipay.zdal.test.shardfailover; import java.sql.Date; import java.sql.ResultSet; import java.sql.SQLException; import java.util.HashMap; import java.util.Map; import static com.alipay.ats.internal.domain.ATS.Step; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import com.alipay.ats.annotation.Feature; import com.alipay.ats.annotation.Priority; import com.alipay.ats.annotation.Subject; import com.alipay.ats.assertion.TestAssertion; import com.alipay.ats.enums.PriorityLevel; import com.alipay.ats.junit.ATSJUnitRunner; import com.alipay.zdal.test.common.ConstantsTest; import com.alipay.zdal.test.common.ZdalTestCommon; import com.ibatis.sqlmap.client.SqlMapClient; @RunWith(ATSJUnitRunner.class) @Feature("shard+Failover ,���׺") public class SR953040 { public TestAssertion Assert = new TestAssertion();; private SqlMapClient sqlMap; private String dbpsd; private String dbuser; private String dburl1; private String dburl2; private String dburlsample; @Before public void beforeTestCase(){ dbpsd=ConstantsTest.mysq112Psd; dbuser=ConstantsTest.mysq112User; dburl1=ConstantsTest.mysql12UrlItemNumberId; dburl2=ConstantsTest.mysql12UrlUserCharId; dburlsample=ConstantsTest.mysql12UrlSample1; } @Subject("shard+failover�����׺��dbIndexForEachDB��Ԥ�Ʋ��뵽0���0��") @Priority(PriorityLevel.HIGHEST) @Test public void TC953041() { Step("shard+failover�����׺��dbIndexForEachDB��Ԥ�Ʋ��뵽0���0��"); sqlMap = (SqlMapClient) ZdalShardfailoverSuite.context .getBean("zdalShardfailoverTableSuffix1"); Map<String, Object> params = new HashMap<String, Object>(); params.put("user_char_id", Integer.valueOf("11")); params.put("AUCTION_ID", Integer.valueOf("10")); params.put("item_number_id", Integer.valueOf("11")); params.put("item_char_id",Integer.valueOf("11")); params.put("name", "test_address"); try { sqlMap.insert("insertShardfailoverTableSuffix1", params); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } chackData(dburl1); deleteData(dburl1); } @Subject("shard+failover�����׺��dbIndexForEachDB��Ԥ�Ʋ��뵽1���1��") @Priority(PriorityLevel.HIGHEST) @Test public void TC953042() { Step("shard+failover�����׺��dbIndexForEachDB��Ԥ�Ʋ��뵽1���1��"); sqlMap = (SqlMapClient) ZdalShardfailoverSuite.context .getBean("zdalShardfailoverTableSuffix1"); Map<String, Object> params = new HashMap<String, Object>(); params.put("user_char_id", Integer.valueOf("11")); params.put("AUCTION_ID", Integer.valueOf("11")); params.put("item_number_id", Integer.valueOf("11")); params.put("item_char_id",Integer.valueOf("11")); params.put("name", "test_address"); try { sqlMap.insert("insertShardfailoverTableSuffix1", params); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } chackData(dburl2); deleteData(dburl2); } @Subject("shard+failover�����׺��twoColumnForEachDB��д1���01_09��") @Priority(PriorityLevel.HIGHEST) @Test public void TC953043(){ Step("shard+failover�����׺��twoColumnForEachDB��д1���01_09��"); sqlMap = (SqlMapClient) ZdalShardfailoverSuite.context .getBean("zdalShardfailoverTableSuffix2"); Map<String, Object> params = new HashMap<String, Object>(); params.put("card_no", "2013101711"); params.put("gmtTime", Date.valueOf("2013-10-17")); params.put("next_sync_time", Date.valueOf("2013-10-17")); try { sqlMap.insert("insertShardfailoverTableSuffix2",params); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } /** * ���ݼ�� * @param url */ private void chackData(String url){ ResultSet rs; String sql1="select count(*) from auction_auctions_0"; String sql2="select count(*) from auction_auctions_1"; String sql3="select count(*) from card_no_month_01_09"; if(url.equalsIgnoreCase(dburl1)){ rs=ZdalTestCommon.dataCheckFromJDBC(sql1, dburl1, dbpsd, dbuser); }else if(url.equalsIgnoreCase(dburl2)){ rs=ZdalTestCommon.dataCheckFromJDBC(sql2, dburl2, dbpsd, dbuser); } else{ rs=ZdalTestCommon.dataCheckFromJDBC(sql3, dburlsample, dbpsd, dbuser); } try { rs.next(); Assert.areEqual(1, rs.getInt(1), "���ݼ��"); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } /** * ɾ������ * @param url */ private void deleteData(String url){ String sql1="delete from auction_auctions_0"; String sql2="delete from auction_auctions_1"; String sql3="delete from card_no_month_01_09"; if(url.equalsIgnoreCase(dburl1)){ ZdalTestCommon.dataUpdateJDBC(sql1, dburl1, dbpsd, dbuser); }else if(url.equalsIgnoreCase(dburl2)){ ZdalTestCommon.dataUpdateJDBC(sql2, dburl2, dbpsd, dbuser); } else{ ZdalTestCommon.dataUpdateJDBC(sql3, dburlsample, dbpsd, dbuser); } } }