@Test public void testCreateFromMapWithMultipleValues() { Map<String, String> m = new HashMap<>(); m.put("k1", "v1"); m.put("k2", "v2"); ArrayTagSet ts1 = ArrayTagSet.create(m); ArrayTagSet ts2 = ArrayTagSet.create("k1", "v1").addAll(ArrayTagSet.create("k2", "v2")); Assertions.assertEquals(ts1, ts2); }
@Test public void testMergeMultipleValuesAsList() { ArrayList<Tag> prefix = new ArrayList<>(); ArrayTagSet initial = ArrayTagSet.create("k3", "v3"); ArrayTagSet expected = ArrayTagSet.create("k1", "v1") .addAll(ArrayTagSet.create("k2", "v2")) .addAll(ArrayTagSet.create("k3", "v3")); prefix.add(new BasicTag("k1", "v1")); prefix.add(new BasicTag("k2", "v2")); ArrayTagSet actual = initial.addAll(prefix); Assertions.assertEquals(expected, actual); }
@Test public void testCreateFromVarargsOdd() { Assertions.assertThrows(IllegalArgumentException.class, () -> ArrayTagSet.create("a", "1", "b")); }
@Test public void testIteratorRemoveUnsupported() { Assertions.assertThrows(UnsupportedOperationException.class, () -> ArrayTagSet.create("k", "v").iterator().remove()); }
@Test public void testMergeEmptyList() { ArrayTagSet expected = ArrayTagSet.create("k3", "v3"); ArrayTagSet actual = expected.addAll(new ArrayList<>()); Assertions.assertSame(expected, actual); }
@Test public void testMergeNullMap() { Assertions.assertThrows(NullPointerException.class, () -> { ArrayTagSet expected = ArrayTagSet.create("k3", "v3"); expected.addAll((Map<String, String>) null); }); }
@Test public void testMergeNullList() { Assertions.assertThrows(NullPointerException.class, () -> { ArrayTagSet expected = ArrayTagSet.create("k3", "v3"); expected.addAll((Iterable<Tag>) null); }); }
@Test public void testMergeNullTag() { Assertions.assertThrows(NullPointerException.class, () -> { ArrayTagSet expected = ArrayTagSet.create("k", "v"); expected.add(null); }); }
@Test public void filterKV() { List<Measurement> ms = newList(10); Tag t = new BasicTag("i", "7"); List<Measurement> out = Utils.toList(Utils.filter(ms, "i", "7")); Assertions.assertEquals(1, out.size()); Assertions.assertEquals(out.get(0).id().tags(), ArrayTagSet.create(t)); }
@Test public void filterPredicate() { List<Measurement> ms = newList(10); Tag t = new BasicTag("i", "7"); List<Measurement> out = Utils.toList(Utils.filter(ms, v -> v.value() == 7.0)); Assertions.assertEquals(1, out.size()); Assertions.assertEquals(out.get(0).id().tags(), ArrayTagSet.create(t)); }
@Test public void firstKV() { List<Measurement> ms = newList(10); Tag t = new BasicTag("i", "7"); Measurement m = Utils.first(ms, "i", "7"); Assertions.assertEquals(m.id().tags(), ArrayTagSet.create(t)); }
@Test public void firstPredicate() { List<Measurement> ms = newList(10); Tag t = new BasicTag("i", "7"); Measurement m = Utils.first(ms, v -> v.value() == 7.0); Assertions.assertEquals(m.id().tags(), ArrayTagSet.create(t)); }
@Test public void testTimerHelpers() { Registry r = newRegistry(true, 10000); Timer c1 = r.timer("foo", "bar", "baz", "k", "v"); Timer c2 = r.timer("foo", ArrayTagSet.create("k", "v").add(new BasicTag("bar", "baz"))); Timer c3 = r.timer("foo"); Assertions.assertSame(unwrap(c1), unwrap(c2)); Assertions.assertNotSame(unwrap(c1), unwrap(c3)); }
@Test public void testCounterHelpers() { Registry r = newRegistry(true, 10000); Counter c1 = r.counter("foo", "bar", "baz", "k", "v"); Counter c2 = r.counter("foo", ArrayTagSet.create("k", "v").add(new BasicTag("bar", "baz"))); Counter c3 = r.counter("foo"); Assertions.assertSame(unwrap(c1), unwrap(c2)); Assertions.assertNotSame(unwrap(c1), unwrap(c3)); }
@Test public void testDistributionSummaryHelpers() { Registry r = newRegistry(true, 10000); DistributionSummary c1 = r.distributionSummary("foo", "bar", "baz", "k", "v"); DistributionSummary c2 = r.distributionSummary("foo", ArrayTagSet.create("k", "v").add(new BasicTag("bar", "baz"))); DistributionSummary c3 = r.distributionSummary("foo"); Assertions.assertSame(unwrap(c1), unwrap(c2)); Assertions.assertNotSame(unwrap(c1), unwrap(c3)); }