Manybubbles has uploaded a new change for review.
https://gerrit.wikimedia.org/r/207828
Change subject: 0 is within 20% of 0
......................................................................
0 is within 20% of 0
Change-Id: I33fab88b3542adc0963a94919a905d8bef5005b5
---
M
src/main/java/org/wikimedia/search/extra/superdetectnoop/WithinPercentageDetector.java
M
src/test/java/org/wikimedia/search/extra/superdetectnoop/SuperDetectNoopScriptTest.java
2 files changed, 20 insertions(+), 0 deletions(-)
git pull ssh://gerrit.wikimedia.org:29418/search/extra
refs/changes/28/207828/1
diff --git
a/src/main/java/org/wikimedia/search/extra/superdetectnoop/WithinPercentageDetector.java
b/src/main/java/org/wikimedia/search/extra/superdetectnoop/WithinPercentageDetector.java
index 8729d46..2f3aa25 100644
---
a/src/main/java/org/wikimedia/search/extra/superdetectnoop/WithinPercentageDetector.java
+++
b/src/main/java/org/wikimedia/search/extra/superdetectnoop/WithinPercentageDetector.java
@@ -37,6 +37,9 @@
@Override
public boolean isCloseEnough(Number oldValue, Number newValue) {
+ if (oldValue.doubleValue() == 0) {
+ return newValue.doubleValue() == 0;
+ }
return abs((newValue.doubleValue() - oldValue.doubleValue()) /
oldValue.doubleValue()) < absoluteDifference;
}
}
diff --git
a/src/test/java/org/wikimedia/search/extra/superdetectnoop/SuperDetectNoopScriptTest.java
b/src/test/java/org/wikimedia/search/extra/superdetectnoop/SuperDetectNoopScriptTest.java
index 9db288b..d267ca3 100644
---
a/src/test/java/org/wikimedia/search/extra/superdetectnoop/SuperDetectNoopScriptTest.java
+++
b/src/test/java/org/wikimedia/search/extra/superdetectnoop/SuperDetectNoopScriptTest.java
@@ -87,6 +87,22 @@
}
@Test
+ public void withinPercentageZeroMatch() throws IOException {
+ indexSeedData();
+ XContentBuilder b = x("zero", 0, "within 200%");
+ Map<String, Object> r = update(b, false);
+ assertThat(r, hasEntry("zero", (Object) 0));
+ }
+
+ @Test
+ public void withinPercentageZeroChanged() throws IOException {
+ indexSeedData();
+ XContentBuilder b = x("zero", 1, "within 200%");
+ Map<String, Object> r = update(b, true);
+ assertThat(r, hasEntry("zero", (Object) 1));
+ }
+
+ @Test
public void percentageOnString() throws IOException {
indexSeedData();
XContentBuilder b = x("string", "cat", "within 200%");
@@ -198,6 +214,7 @@
XContentBuilder b = jsonBuilder().startObject();
{
b.field("int", 3);
+ b.field("zero", 0);
b.field("string", "cake");
b.startObject("foo");
{
--
To view, visit https://gerrit.wikimedia.org/r/207828
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: I33fab88b3542adc0963a94919a905d8bef5005b5
Gerrit-PatchSet: 1
Gerrit-Project: search/extra
Gerrit-Branch: master
Gerrit-Owner: Manybubbles <[email protected]>
_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits