Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -18,4 +18,12 @@ public ServerEnvironmentUtils(OnlineManagementClient client) {
public String getServerHostName() throws IOException {
return operations.readAttribute(SERVER_ENVIRONMENT_ADDRESS, "host-name").stringValue();
}

public boolean isEAP() {
try {
return operations.readAttribute(Address.root(), "product-name").stringValue().contains("EAP");
} catch (IOException ex) {
throw new IllegalStateException("Unable to read product-name from server CLI", ex);
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
*/
package org.jboss.hal.testsuite.test;

import java.io.IOException;
import java.util.List;

import org.jboss.arquillian.core.api.annotation.Inject;
Expand All @@ -23,13 +24,17 @@
import org.jboss.arquillian.junit.Arquillian;
import org.jboss.hal.resources.Ids;
import org.jboss.hal.testsuite.Console;
import org.jboss.hal.testsuite.creaper.ManagementClientProvider;
import org.jboss.hal.testsuite.fragment.HeaderFragment;
import org.jboss.hal.testsuite.page.HomePage;
import org.jboss.hal.testsuite.util.ServerEnvironmentUtils;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.openqa.selenium.By;
import org.openqa.selenium.WebElement;
import org.wildfly.extras.creaper.core.online.OnlineManagementClient;

import static org.jboss.hal.testsuite.Selectors.contains;
import static org.junit.Assert.assertEquals;
Expand All @@ -38,6 +43,9 @@
@RunWith(Arquillian.class)
public class HomePageTest {

private static final OnlineManagementClient client = ManagementClientProvider.createOnlineManagementClient();
private static final ServerEnvironmentUtils serverEnvironmentUtils = new ServerEnvironmentUtils(client);

@Page private HomePage page;
@Inject private Console console;

Expand All @@ -46,18 +54,26 @@ public void setUp() {
page.navigate();
}

@AfterClass
public static void cleanUp() throws IOException {
client.close();
}

@Test
public void topLevelCategories() {
HeaderFragment header = console.header();
List<WebElement> topLevelCategories = header.getTopLevelCategories();
assertEquals(5, topLevelCategories.size());
assertEquals(serverEnvironmentUtils.isEAP() ? 6 : 5, topLevelCategories.size());
assertEquals(Ids.TLC_HOMEPAGE, header.getSelectedTopLevelCategory().getAttribute("id"));

assertTrue(containsTopLevelCategory(topLevelCategories, Ids.TLC_HOMEPAGE));
assertTrue(containsTopLevelCategory(topLevelCategories, Ids.TLC_DEPLOYMENTS));
assertTrue(containsTopLevelCategory(topLevelCategories, Ids.TLC_CONFIGURATION));
assertTrue(containsTopLevelCategory(topLevelCategories, Ids.TLC_RUNTIME));
assertTrue(containsTopLevelCategory(topLevelCategories, Ids.TLC_ACCESS_CONTROL));
assertTrue(containsTopLevelCategory(topLevelCategories, Ids.TLC_CONFIGURATION));
if (serverEnvironmentUtils.isEAP()) {
assertTrue(containsTopLevelCategory(topLevelCategories, Ids.TLC_UPDATE_MANAGER));
}
}

@Test
Expand All @@ -66,6 +82,9 @@ public void modules() {
assertTrue(containsModule("Configuration"));
assertTrue(containsModule("Runtime"));
assertTrue(containsModule("Access Control"));
if (serverEnvironmentUtils.isEAP()) {
assertTrue(containsModule("Update Manager"));
}

By selector = ByJQuery.selector(".eap-home-module-header > h2" + contains("Need Help?"));
assertTrue(page.getRootContainer().findElement(selector).isDisplayed());
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -122,6 +122,8 @@ public void testMenuItems() {
missingItems.append(menuItem);
}
}
// start servers back again to keep original conditions for other test cases
changeStatusStart();
Assert.assertTrue("Menu should contains values " + missingItems.toString() + ". See HAL-1582.", missingItems.toString().isEmpty());
}

Expand All @@ -136,6 +138,15 @@ private void changeStatus(String status) {
verifyServersAreInState(Arrays.asList(SERVERS_IN_SERVER_GROUP), STOPPED, 15000);
}

private void changeStatusStart() {
console.finder(NameTokens.RUNTIME, SERVER_GROUP_FINDER_PATH)
.column(Ids.SERVER_GROUP)
.selectItem(SERVER_GROUP)
.dropdown()
.click("Start");
console.verifySuccess();
verifyServersAreInState(Arrays.asList(SERVERS_IN_SERVER_GROUP), RUNNING, 20000);
}

private void verifyServersAreInState(Collection<String> servers, String state, int timeout) {
servers.parallelStream().forEach(server -> {
Expand Down