Skip to content

Commit

Permalink
filter fixes/tests #75
Browse files Browse the repository at this point in the history
  • Loading branch information
eichelbe committed Aug 17, 2022
1 parent b7550e7 commit 833d82b
Show file tree
Hide file tree
Showing 2 changed files with 48 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -922,9 +922,28 @@ public static boolean include(Id id, MeterFilter... filters) {
* @return {@code true} for apply, {@code false} else
*/
public static boolean include(String id, MeterFilter... filters) {
return include(new Meter.Id(id, null, null, null, null));
return include(new Meter.Id(id, null, null, null, null), filters);
}

/**
* Appends {@code addition} to {@code base}.
*
* @param base the base filters
* @param addition the addition filters
* @return the combined filter array
*/
public static MeterFilter[] append(MeterFilter[] base, MeterFilter... addition) {
MeterFilter[] result = new MeterFilter[base.length + addition.length];
int pos = 0;
for (int i = 0; i < base.length; i++) {
result[pos++] = base[i];
}
for (int i = 0; i < addition.length; i++) {
result[pos++] = addition[i];
}
return result;
}

/**
* Applies the given list of meter filters.
*
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -364,5 +364,33 @@ public void testJson() {
}
}
}

/**
* Tests {@link MetricsProvider#include(String, MeterFilter...)}.
*/
@Test
public void testInclude() {
assertTrue(MetricsProvider.include("jvm_memory_pool_collection_max_bytes",
MetricsProvider.DEFAULT_METER_FILTERS)); // filters use dot
assertFalse(MetricsProvider.include("jvm_memory_pool_collection_max_bytes".replaceAll("_", "."),
MetricsProvider.DEFAULT_METER_FILTERS)); // filters use dot
}

/**
* Tests {@link MetricsProvider#append(MeterFilter[], MeterFilter...)}.
*/
@Test
public void testAppend() {
MeterFilter add = MeterFilter.deny();
MeterFilter[] t = MetricsProvider.append(MetricsProvider.DEFAULT_METER_FILTERS, add);
assertTrue(t.length == MetricsProvider.DEFAULT_METER_FILTERS.length + 1);
for (int i = 0; i < t.length; i++) {
assertNotNull(t[i]);
}
for (int i = 0; i < MetricsProvider.DEFAULT_METER_FILTERS.length; i++) {
assertTrue(t[i] == MetricsProvider.DEFAULT_METER_FILTERS[i]);
}
assertTrue(t[t.length - 1] == add);
}

}

0 comments on commit 833d82b

Please sign in to comment.