Skip to content

Commit f477852

Browse files
author
Hendrik Muhs
authored
[ML-Dataframe] Feature/fib reenable agg config tests (#34453)
re-enables tests after upstream fixes, see #34005
1 parent b1802f1 commit f477852

File tree

4 files changed

+40
-10
lines changed

4 files changed

+40
-10
lines changed

x-pack/plugin/ml-feature-index-builder/src/main/java/org/elasticsearch/xpack/ml/featureindexbuilder/job/SourceConfig.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ public class SourceConfig implements Writeable, ToXContentObject {
5353
List<CompositeValuesSourceBuilder<?>> sources = new ArrayList<>(num);
5454
for (int i = 0; i < num; i++) {
5555
CompositeValuesSourceBuilder<?> builder = CompositeValuesSourceParserHelper.readFrom(in);
56-
getSources().add(builder);
56+
sources.add(builder);
5757
}
5858
this.sources = Collections.unmodifiableList(sources);
5959
}

x-pack/plugin/ml-feature-index-builder/src/test/java/org/elasticsearch/xpack/ml/featureindexbuilder/action/PutFeatureIndexBuilderJobActionRequestTests.java

Lines changed: 29 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,11 @@
66

77
package org.elasticsearch.xpack.ml.featureindexbuilder.action;
88

9+
import org.elasticsearch.common.io.stream.NamedWriteableRegistry;
10+
import org.elasticsearch.common.settings.Settings;
11+
import org.elasticsearch.common.xcontent.NamedXContentRegistry;
912
import org.elasticsearch.common.xcontent.XContentParser;
13+
import org.elasticsearch.search.SearchModule;
1014
import org.elasticsearch.test.AbstractStreamableXContentTestCase;
1115
import org.elasticsearch.xpack.ml.featureindexbuilder.action.PutFeatureIndexBuilderJobAction.Request;
1216
import org.elasticsearch.xpack.ml.featureindexbuilder.job.FeatureIndexBuilderJobConfig;
@@ -15,18 +19,41 @@
1519

1620
import java.io.IOException;
1721

22+
import static java.util.Collections.emptyList;
23+
1824
public class PutFeatureIndexBuilderJobActionRequestTests extends AbstractStreamableXContentTestCase<Request> {
1925

2026
private String jobId;
2127

28+
private NamedWriteableRegistry namedWriteableRegistry;
29+
private NamedXContentRegistry namedXContentRegistry;
30+
31+
@Before
32+
public void registerAggregationNamedObjects() throws Exception {
33+
// register aggregations as NamedWriteable
34+
SearchModule searchModule = new SearchModule(Settings.EMPTY, false, emptyList());
35+
namedWriteableRegistry = new NamedWriteableRegistry(searchModule.getNamedWriteables());
36+
namedXContentRegistry = new NamedXContentRegistry(searchModule.getNamedXContents());
37+
}
38+
39+
@Override
40+
protected NamedWriteableRegistry getNamedWriteableRegistry() {
41+
return namedWriteableRegistry;
42+
}
43+
44+
@Override
45+
protected NamedXContentRegistry xContentRegistry() {
46+
return namedXContentRegistry;
47+
}
48+
2249
@Before
2350
public void setupJobID() {
24-
jobId = randomAlphaOfLengthBetween(1,10);
51+
jobId = randomAlphaOfLengthBetween(1, 10);
2552
}
2653

2754
@Override
2855
protected Request doParseInstance(XContentParser parser) throws IOException {
29-
return Request.fromXContent(parser, jobId);
56+
return Request.fromXContent(parser, jobId);
3057
}
3158

3259
@Override

x-pack/plugin/ml-feature-index-builder/src/test/java/org/elasticsearch/xpack/ml/featureindexbuilder/job/AggregationConfigTests.java

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,25 +6,29 @@
66

77
package org.elasticsearch.xpack.ml.featureindexbuilder.job;
88

9-
import org.apache.lucene.util.LuceneTestCase.AwaitsFix;
109
import org.elasticsearch.common.io.stream.Writeable.Reader;
1110
import org.elasticsearch.common.xcontent.XContentParser;
1211
import org.elasticsearch.search.aggregations.AggregationBuilder;
1312
import org.elasticsearch.search.aggregations.AggregationBuilders;
1413
import org.elasticsearch.search.aggregations.AggregatorFactories;
1514
import java.io.IOException;
15+
import java.util.HashSet;
16+
import java.util.Set;
1617

1718
import static org.hamcrest.Matchers.equalTo;
1819

19-
// broken upstream
20-
@AwaitsFix(bugUrl="https://github.com/elastic/elasticsearch/issues/33942")
2120
public class AggregationConfigTests extends AbstractSerializingFeatureIndexBuilderTestCase<AggregationConfig> {
2221

2322
public static AggregationConfig randomAggregationConfig() {
2423
AggregatorFactories.Builder builder = new AggregatorFactories.Builder();
2524

26-
for (int i = 0; i < randomIntBetween(1, 20); ++i) {
27-
builder.addAggregator(getRandomSupportedAggregation());
25+
// ensure that the unlikely does not happen: 2 aggs share the same name
26+
Set<String> names = new HashSet<>();
27+
for (int i = 1; i < randomIntBetween(1, 20); ++i) {
28+
AggregationBuilder aggBuilder = getRandomSupportedAggregation();
29+
if (names.add(aggBuilder.getName())) {
30+
builder.addAggregator(aggBuilder);
31+
}
2832
}
2933

3034
return new AggregationConfig(builder);

x-pack/plugin/ml-feature-index-builder/src/test/java/org/elasticsearch/xpack/ml/featureindexbuilder/job/FeatureIndexBuilderJobConfigTests.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,9 @@ public class FeatureIndexBuilderJobConfigTests extends AbstractSerializingFeatur
1717
private String jobId;
1818

1919
public static FeatureIndexBuilderJobConfig randomFeatureIndexBuilderJobConfig() {
20-
// AggregationConfig disabled, see: https://github.com/elastic/elasticsearch/pull/33942
2120
return new FeatureIndexBuilderJobConfig(randomAlphaOfLengthBetween(1, 10), randomAlphaOfLengthBetween(1, 10),
2221
randomAlphaOfLengthBetween(1, 10), SourceConfigTests.randomSourceConfig(),
23-
null /* AggregationConfigTests.randonAggregationConfig() */);
22+
AggregationConfigTests.randomAggregationConfig());
2423
}
2524

2625
@Before

0 commit comments

Comments
 (0)