Search in sources :

Example 6 with Member

use of org.apache.geode.tools.pulse.tests.Member in project geode by apache.

the class PulseTestUtils method validateServerGroupGridData.

public static void validateServerGroupGridData() {
    List<WebElement> serverGridRows = getDriver().findElements(By.xpath("//table[@id='memberListSG']/tbody/tr"));
    int rowsCount = serverGridRows.size();
    String[][] gridDataFromUI = new String[rowsCount][7];
    for (int j = 2, x = 0; j <= serverGridRows.size(); j++, x++) {
        for (int i = 0; i <= 6; i++) {
            gridDataFromUI[x][i] = getDriver().findElement(By.xpath("//table[@id='memberListSG']/tbody/tr[" + j + "]/td[" + (i + 1) + "]")).getText();
        }
    }
    String[] memberNames = JMXProperties.getInstance().getProperty("members").split(" ");
    HashMap<String, HashMap<String, Member>> sgMap = new HashMap<String, HashMap<String, Member>>();
    for (String member : memberNames) {
        Member thisMember = new Member(member);
        String[] sgs = thisMember.getGroups();
        for (String sgName : sgs) {
            HashMap<String, Member> sgMembers = sgMap.get(sgName);
            if (sgMembers == null) {
                sgMembers = new HashMap<String, Member>();
                sgMap.put(sgName, sgMembers);
            }
            sgMembers.put(thisMember.getMember(), thisMember);
        }
    }
    for (int i = 0; i < gridDataFromUI.length - 1; i++) {
        String sgName = gridDataFromUI[i][0];
        String memName = gridDataFromUI[i][1];
        Member m = sgMap.get(sgName).get(memName);
        assertEquals(sgName, gridDataFromUI[i][0]);
        assertEquals(memName, gridDataFromUI[i][1]);
        assertEquals(m.getMember(), gridDataFromUI[i][2]);
        assertEquals(m.getHost(), gridDataFromUI[i][3]);
        String cupUsage = String.valueOf(m.getCpuUsage());
        assertEquals(cupUsage, gridDataFromUI[i][5]);
    }
}
Also used : HashMap(java.util.HashMap) WebElement(org.openqa.selenium.WebElement) Member(org.apache.geode.tools.pulse.tests.Member)

Example 7 with Member

use of org.apache.geode.tools.pulse.tests.Member in project geode by apache.

the class PulseTestUtils method assertMemeberSortingByRzCpuUsage.

public static void assertMemeberSortingByRzCpuUsage() {
    String[] memberNames = JMXProperties.getInstance().getProperty("members").split(" ");
    HashMap<String, HashMap<String, Member>> rzMap = new HashMap<String, HashMap<String, Member>>();
    for (String member : memberNames) {
        Member thisMember = new Member(member);
        String sgName = thisMember.getRedundancyZone();
        HashMap<String, Member> rzMembers = rzMap.get(sgName);
        if (rzMembers == null) {
            rzMembers = new HashMap<String, Member>();
            rzMap.put(sgName, rzMembers);
        }
        rzMembers.put(thisMember.getMember(), thisMember);
    }
    Map<Double, String> memberMap = new TreeMap<>(Collections.reverseOrder());
    String rzName = "RZ1 RZ2";
    String memName = "M1";
    Member m = rzMap.get(rzName).get(memName);
    memberMap.put(m.getCpuUsage(), m.getMember());
    for (Map.Entry<Double, String> entry : memberMap.entrySet()) {
        // here matching painting style to validation that the members are painted according to their
        // cpu usage
        String refMemberCPUUsage = null;
        if (entry.getValue().equalsIgnoreCase("M1")) {
            refMemberCPUUsage = PulseTestData.RedundancyZone.cpuUsagePaintStyleRZ1RZ2M1;
        } else if (entry.getValue().equalsIgnoreCase("M2")) {
            refMemberCPUUsage = PulseTestData.RedundancyZone.cpuUsagePaintStyleRZ1RZ2M2;
        }
        assertTrue(waitForElementWithId("RZ1 RZ2(!)" + entry.getValue()).getAttribute("style").contains(refMemberCPUUsage));
    }
}
Also used : HashMap(java.util.HashMap) TreeMap(java.util.TreeMap) Member(org.apache.geode.tools.pulse.tests.Member) HashMap(java.util.HashMap) TreeMap(java.util.TreeMap) Map(java.util.Map)

Example 8 with Member

use of org.apache.geode.tools.pulse.tests.Member in project geode by apache.

the class PulseTestUtils method assertMemberSortingByRzHeapUsage.

public static void assertMemberSortingByRzHeapUsage() {
    String[] memberNames = JMXProperties.getInstance().getProperty("members").split(" ");
    HashMap<String, HashMap<String, Member>> rzMap = new HashMap<String, HashMap<String, Member>>();
    for (String member : memberNames) {
        Member thisMember = new Member(member);
        String sgName = thisMember.getRedundancyZone();
        HashMap<String, Member> rzMembers = rzMap.get(sgName);
        if (rzMembers == null) {
            rzMembers = new HashMap<String, Member>();
            rzMap.put(sgName, rzMembers);
        }
        rzMembers.put(thisMember.getMember(), thisMember);
    }
    Map<Float, String> memberMap = new TreeMap<Float, String>(Collections.reverseOrder());
    String rzName = "RZ1 RZ2";
    String memName = "M1";
    Member m = rzMap.get(rzName).get(memName);
    memberMap.put((float) m.getCurrentHeapSize(), m.getMember());
    for (Map.Entry<Float, String> entry : memberMap.entrySet()) {
        // here matching painting style to validation that the members are painted according to their
        // cpu usage
        String refMemberHeapUsage = null;
        if (entry.getValue().equalsIgnoreCase("M1")) {
            refMemberHeapUsage = PulseTestData.RedundancyZone.heapUsagePaintStyleRZ1RZ2M1;
        } else if (entry.getValue().equalsIgnoreCase("M2")) {
            refMemberHeapUsage = PulseTestData.RedundancyZone.heapUsagePaintStyleRZ1RZ2M2;
        } else {
            refMemberHeapUsage = PulseTestData.RedundancyZone.heapUsagePaintStyleRZ3M3;
        }
        assertTrue(waitForElementWithId("RZ1 RZ2(!)" + entry.getValue()).getAttribute("style").contains(refMemberHeapUsage));
    }
}
Also used : HashMap(java.util.HashMap) TreeMap(java.util.TreeMap) Member(org.apache.geode.tools.pulse.tests.Member) HashMap(java.util.HashMap) TreeMap(java.util.TreeMap) Map(java.util.Map)

Example 9 with Member

use of org.apache.geode.tools.pulse.tests.Member in project geode by apache.

the class PulseTestUtils method assertMemberSortingByHeapUsage.

public static void assertMemberSortingByHeapUsage() {
    Map<Long, String> memberMap = new TreeMap<Long, String>(Collections.reverseOrder());
    String[] membersNames = splitString(JMXProperties.getInstance().getProperty("members"), " ");
    for (String member : membersNames) {
        Member thisMember = new Member(member);
        memberMap.put(thisMember.getCurrentHeapSize(), thisMember.getMember());
    }
    for (Map.Entry<Long, String> entry : memberMap.entrySet()) {
        // here matching painting style to validation that the members are painted according to their
        // cpu usage
        String refMemberHeapUsage = null;
        if (entry.getValue().equalsIgnoreCase("M1")) {
            refMemberHeapUsage = PulseTestData.Topology.heapUsagePaintStyleM1;
        } else if (entry.getValue().equalsIgnoreCase("M2")) {
            refMemberHeapUsage = PulseTestData.Topology.heapUsagePaintStyleM2;
        } else {
            refMemberHeapUsage = PulseTestData.Topology.heapUsagePaintStyleM3;
        }
        assertTrue(waitForElementWithId(entry.getValue()).getAttribute("style").contains(refMemberHeapUsage));
    }
}
Also used : TreeMap(java.util.TreeMap) Member(org.apache.geode.tools.pulse.tests.Member) HashMap(java.util.HashMap) TreeMap(java.util.TreeMap) Map(java.util.Map)

Example 10 with Member

use of org.apache.geode.tools.pulse.tests.Member in project geode by apache.

the class PulseTestUtils method validateRedundancyZonesGridData.

public static void validateRedundancyZonesGridData() {
    List<WebElement> rzGridRows = getDriver().findElements(By.xpath("//table[@id='memberListRZ']/tbody/tr"));
    int rowsCount = rzGridRows.size();
    String[][] gridDataFromUI = new String[rowsCount][7];
    for (int j = 2, x = 0; j <= rzGridRows.size(); j++, x++) {
        for (int i = 0; i <= 6; i++) {
            gridDataFromUI[x][i] = getDriver().findElement(By.xpath("//table[@id='memberListRZ']/tbody/tr[" + j + "]/td[" + (i + 1) + "]")).getText();
        }
    }
    String[] memberNames = JMXProperties.getInstance().getProperty("members").split(" ");
    HashMap<String, HashMap<String, Member>> rzMap = new HashMap<String, HashMap<String, Member>>();
    for (String member : memberNames) {
        Member thisMember = new Member(member);
        // String[] rz = thisMember.getRedundancyZone();
        String sgName = thisMember.getRedundancyZone();
        // for (String sgName : rz) {
        HashMap<String, Member> rzMembers = rzMap.get(sgName);
        if (rzMembers == null) {
            rzMembers = new HashMap<String, Member>();
            rzMap.put(sgName, rzMembers);
        }
        rzMembers.put(thisMember.getMember(), thisMember);
    // }
    }
    for (int i = 0; i < gridDataFromUI.length - 1; i++) {
        String sgName = gridDataFromUI[i][0];
        String memName = gridDataFromUI[i][1];
        Member m = rzMap.get(sgName).get(memName);
        assertEquals(sgName, gridDataFromUI[i][0]);
        assertEquals(memName, gridDataFromUI[i][1]);
        assertEquals(m.getMember(), gridDataFromUI[i][2]);
        assertEquals(m.getHost(), gridDataFromUI[i][3]);
        String cupUsage = String.valueOf(m.getCpuUsage());
        assertEquals(cupUsage, gridDataFromUI[i][5]);
    }
}
Also used : HashMap(java.util.HashMap) WebElement(org.openqa.selenium.WebElement) Member(org.apache.geode.tools.pulse.tests.Member)

Aggregations

HashMap (java.util.HashMap)10 Member (org.apache.geode.tools.pulse.tests.Member)10 Map (java.util.Map)6 TreeMap (java.util.TreeMap)6 WebElement (org.openqa.selenium.WebElement)4