use of org.apache.geode.tools.pulse.tests.Member in project geode by apache.
the class PulseTestUtils method assertMemberSortingByCpuUsage.
public static void assertMemberSortingByCpuUsage() {
Map<Double, String> memberMap = new TreeMap<>(Collections.reverseOrder());
String[] membersNames = splitString(JMXProperties.getInstance().getProperty("members"), " ");
for (String member : membersNames) {
Member thisMember = new Member(member);
memberMap.put(thisMember.getCpuUsage(), thisMember.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.Topology.cpuUsagePaintStyleM1;
} else if (entry.getValue().equalsIgnoreCase("M2")) {
refMemberCPUUsage = PulseTestData.Topology.cpuUsagePaintStyleM2;
} else {
refMemberCPUUsage = PulseTestData.Topology.cpuUsagePaintStyleM3;
}
assertTrue(waitForElementWithId(entry.getValue()).getAttribute("style").contains(refMemberCPUUsage));
}
}
use of org.apache.geode.tools.pulse.tests.Member in project geode by apache.
the class PulseTestUtils method assertMemberSortingBySgCpuUsage.
public static void assertMemberSortingBySgCpuUsage() {
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);
}
}
Map<Double, String> memberMap = new TreeMap<>(Collections.reverseOrder());
// SG3(!)M3
for (int sgId = 1; sgId <= 3; sgId++) {
String sgName = "SG1";
String memName = "M" + sgId;
Member m = sgMap.get(sgName).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.ServerGroups.cpuUsagePaintStyleSG1M1;
} else if (entry.getValue().equalsIgnoreCase("M2")) {
refMemberCPUUsage = PulseTestData.ServerGroups.cpuUsagePaintStyleSG1M2;
} else {
refMemberCPUUsage = PulseTestData.ServerGroups.cpuUsagePaintStyleSG1M3;
}
assertTrue(waitForElementWithId("SG1(!)" + entry.getValue()).getAttribute("style").contains(refMemberCPUUsage));
}
}
use of org.apache.geode.tools.pulse.tests.Member in project geode by apache.
the class PulseTestUtils method validateRegionDetailsGridData.
public static void validateRegionDetailsGridData() {
List<WebElement> serverGridRows = getDriver().findElements(By.xpath("//table[@id='memberList']/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 < 2; i++) {
gridDataFromUI[x][i] = getDriver().findElement(By.xpath("//table[@id='memberList']/tbody/tr[" + j + "]/td[" + (i + 1) + "]")).getText();
}
}
String[] memberNames = JMXProperties.getInstance().getProperty("members").split(" ");
HashMap<String, Member> tpMap = new HashMap<String, Member>();
for (String member : memberNames) {
Member thisMember = new Member(member);
tpMap.put(thisMember.getMember(), thisMember);
}
for (int i = 0; i < gridDataFromUI.length - 1; i++) {
String memName = gridDataFromUI[i][0];
Member m = tpMap.get(memName);
assertEquals(m.getMember(), gridDataFromUI[i][0]);
}
}
use of org.apache.geode.tools.pulse.tests.Member in project geode by apache.
the class PulseTestUtils method assertMemberSortingBySgHeapUsage.
public static void assertMemberSortingBySgHeapUsage() {
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);
}
}
Map<Float, String> memberMap = new TreeMap<Float, String>(Collections.reverseOrder());
for (int sgId = 1; sgId <= 3; sgId++) {
String sgName = "SG1";
String memName = "M" + sgId;
Member m = sgMap.get(sgName).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 refMemberCPUUsage = null;
if (entry.getValue().equalsIgnoreCase("M1")) {
refMemberCPUUsage = PulseTestData.ServerGroups.heapUsagePaintStyleSG1M1;
} else if (entry.getValue().equalsIgnoreCase("M2")) {
refMemberCPUUsage = PulseTestData.ServerGroups.heapUsagePaintStyleSG1M2;
} else {
refMemberCPUUsage = PulseTestData.ServerGroups.heapUsagePaintStyleSG1M3;
}
assertTrue(waitForElementWithId("SG1(!)" + entry.getValue()).getAttribute("style").contains(refMemberCPUUsage));
}
}
use of org.apache.geode.tools.pulse.tests.Member in project geode by apache.
the class PulseTestUtils method validateTopologyGridData.
public static void validateTopologyGridData() {
List<WebElement> rzGridRows = getDriver().findElements(By.xpath("//table[@id='memberList']/tbody/tr"));
int rowsCount = rzGridRows.size();
String[][] gridDataFromUI = new String[rowsCount][8];
for (int j = 2, x = 0; j <= rzGridRows.size(); j++, x++) {
for (int i = 0; i <= 7; i++) {
gridDataFromUI[x][i] = getDriver().findElement(By.xpath("//table[@id='memberList']/tbody/tr[" + j + "]/td[" + (i + 1) + "]")).getText();
}
}
String[] memberNames = JMXProperties.getInstance().getProperty("members").split(" ");
HashMap<String, Member> tpMap = new HashMap<String, Member>();
for (String member : memberNames) {
Member thisMember = new Member(member);
tpMap.put(thisMember.getMember(), thisMember);
}
for (int i = 0; i < gridDataFromUI.length - 1; i++) {
String memName = gridDataFromUI[i][0];
Member m = tpMap.get(memName);
assertEquals(m.getMember(), gridDataFromUI[i][0]);
assertEquals(m.getMember(), gridDataFromUI[i][1]);
assertEquals(m.getHost(), gridDataFromUI[i][2]);
String cupUsage = String.valueOf(m.getCpuUsage());
assertEquals(cupUsage, gridDataFromUI[i][5]);
}
}
Aggregations