Skip to content

Commit

Permalink
EJBCLIENT-504 MixedModeServiceURLTestCase fails intermittently due to…
Browse files Browse the repository at this point in the history
… invalid temp ServiceURL result (#632) (#634)
  • Loading branch information
chengfang authored Jun 16, 2023
1 parent e020bd2 commit 559ae64
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,6 @@
import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;

import org.jboss.byteman.contrib.bmunit.BMRule;
import org.jboss.byteman.contrib.bmunit.BMRules;
Expand Down Expand Up @@ -219,8 +218,8 @@ private void validateResults(Map<String, List<ServiceURL>> results) {
}
}
}
Assert.assertEquals("ServiceURLs do not match for node1", actual_node1_urls, EXPECTED_NODE1_URLS);
Assert.assertEquals("ServiceURLs do not match for node2", actual_node2_urls, EXPECTED_NODE2_URLS);
Assert.assertEquals("ServiceURLs do not match for node1", EXPECTED_NODE1_URLS, actual_node1_urls);
Assert.assertEquals("ServiceURLs do not match for node2", EXPECTED_NODE2_URLS, actual_node2_urls);
}

/**
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,14 @@

import org.jboss.byteman.rule.Rule;
import org.jboss.byteman.rule.helper.Helper;
import org.jboss.ejb.client.EJBClientContext;
import org.wildfly.discovery.FilterSpec;
import org.wildfly.discovery.ServiceURL;

public class MixedModeTestHelper extends Helper {

private static final String NODE_LIST_MAP_NAME = "nodeListMap";
private static final FilterSpec EJB_MODULE_FILTER_SPEC = FilterSpec.hasAttribute(EJBClientContext.FILTER_ATTR_EJB_MODULE);

public MixedModeTestHelper(Rule rule) {
super(rule);
Expand All @@ -21,6 +24,22 @@ public void createNodeListMap() {
}

public void addServiceURLCacheToMap(String node, List<ServiceURL> list) {
if (list.size() < 4) {
System.out.printf("Ignoring partial ServiceURLs: %s%n", list);
return;
}
boolean hasEjbModule = true;
for (ServiceURL u : list) {
if (!u.satisfies(EJB_MODULE_FILTER_SPEC)) {
hasEjbModule = false;
break;
}
}
if (!hasEjbModule) {
System.out.printf("Ignoring invalid temp ServiceURLs: %s%n", list);
return;
}

System.out.println("** Adding serviceURL to map: node = " + node + ", list = " + list);
List<ServiceURL> oldList = (List<ServiceURL>) link(NODE_LIST_MAP_NAME, node, list);
if (oldList != null) {
Expand Down

0 comments on commit 559ae64

Please sign in to comment.