package com.alipay.zdal.test.shardrw; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; import static com.alipay.ats.internal.domain.ATS.Step; 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.client.util.dispatchanalyzer.ZdalDatasourceIntrospector; @RunWith(ATSJUnitRunner.class) @Feature("ȫ�����: getAvailableDBAndTableByWeights") public class SR954020 { public TestAssertion Assert = new TestAssertion(); ZdalDatasourceIntrospector td; @Before public void beforeTestCase() { String[] springXmlPath = { "./shardrw/spring-available-ds.xml" }; ApplicationContext context = new ClassPathXmlApplicationContext(springXmlPath); td = (ZdalDatasourceIntrospector) context .getBean("getAvailableDBAndTableByWeights"); } @Subject("��ȡָ��group�е��߼�������Ӧ�Ŀ��������") @Priority(PriorityLevel.NORMAL) @Test public void TC954021() { Step("��ȡָ��group�е��߼�������Ӧ�Ŀ��������"); String[] re = td.getAvailableDBAndTableByWeights("users", 0, true); Assert.areEqual(true, Integer.parseInt(re[0]) == 0 || Integer.parseInt(re[0]) == 1, "��ȡ���ñ���"); Assert.areEqual( true, re[1].equalsIgnoreCase("users_0") || re[1].equalsIgnoreCase("users_1") || re[1].equalsIgnoreCase("users_2") || re[1].equalsIgnoreCase("users_3") || re[1].equalsIgnoreCase("users_4"), "��ȡ���ñ���"); } @Subject("ָ����groupNumԽ��") @Priority(PriorityLevel.NORMAL) @Test public void TC954022() { try{ Step("ָ����groupNumԽ��"); td.getAvailableDBAndTableByWeights("users", 99, true); }catch(Exception ex){ ex.printStackTrace(); Assert.areEqual(IllegalArgumentException.class, ex.getClass(), "�����쳣"); } } @Subject("ָ�����߼�����������") @Priority(PriorityLevel.NORMAL) @Test public void TC954023() { try{ Step("ָ�����߼�����������"); td.getAvailableDBAndTableByWeights("userstest", 0, true); }catch(Exception ex){ ex.printStackTrace(); Assert.areEqual(IllegalArgumentException.class, ex.getClass(), "�����쳣"); } } }