Add Context.toString (#2289)
This commit is contained in:
parent
7ff20f6db6
commit
13e6485a63
|
|
@ -81,4 +81,18 @@ final class ArrayBasedContext implements Context {
|
||||||
newEntries[newEntries.length - 1] = value;
|
newEntries[newEntries.length - 1] = value;
|
||||||
return new ArrayBasedContext(newEntries);
|
return new ArrayBasedContext(newEntries);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
StringBuilder sb = new StringBuilder("{");
|
||||||
|
for (int i = 0; i < entries.length; i += 2) {
|
||||||
|
sb.append(entries[i]).append('=').append(entries[i + 1]).append(", ");
|
||||||
|
}
|
||||||
|
// get rid of that last pesky comma
|
||||||
|
if (sb.length() > 1) {
|
||||||
|
sb.setLength(sb.length() - 2);
|
||||||
|
}
|
||||||
|
sb.append('}');
|
||||||
|
return sb.toString();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -478,6 +478,14 @@ class ContextTest {
|
||||||
assertThat(Context.root().get(new HashCollidingKey())).isEqualTo(null);
|
assertThat(Context.root().get(new HashCollidingKey())).isEqualTo(null);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void string() {
|
||||||
|
assertThat(Context.root()).hasToString("{}");
|
||||||
|
assertThat(Context.root().with(ANIMAL, "cat")).hasToString("{animal=cat}");
|
||||||
|
assertThat(Context.root().with(ANIMAL, "cat").with(BAG, 10))
|
||||||
|
.hasToString("{animal=cat, bag=10}");
|
||||||
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void hashcodeCollidingKeys() {
|
void hashcodeCollidingKeys() {
|
||||||
Context context = Context.root();
|
Context context = Context.root();
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue