mirror of
https://github.com/google/nomulus.git
synced 2025-05-15 00:47:11 +02:00
Improve pretty-print diffing of Datastore entities
This removes the countless lines of the form "[null, []]" in registry_tool diffs that are an artifact of the way we handle nulls in Objectify. ------------- Created by MOE: https://github.com/google/moe MOE_MIGRATED_REVID=133409440
This commit is contained in:
parent
841be34d18
commit
aa7c05cb8b
6 changed files with 53 additions and 24 deletions
|
@ -15,9 +15,12 @@
|
|||
package google.registry.util;
|
||||
|
||||
import static com.google.common.truth.Truth.assertThat;
|
||||
import static google.registry.util.DiffUtils.prettyPrintEntityDeepDiff;
|
||||
import static google.registry.util.DiffUtils.prettyPrintSetDiff;
|
||||
|
||||
import com.google.common.collect.ImmutableSet;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.junit.runners.JUnit4;
|
||||
|
@ -57,6 +60,18 @@ public class DiffUtilsTest {
|
|||
.isEqualTo("\n ADDED: [y, z]\n REMOVED: [b, c]\n FINAL CONTENTS: [a, y, z]");
|
||||
}
|
||||
|
||||
@Test
|
||||
public void test_emptyToNullCollection_doesntDisplay() {
|
||||
Map<String, Object> mapA = new HashMap<String, Object>();
|
||||
mapA.put("a", "jim");
|
||||
mapA.put("b", null);
|
||||
Map<String, Object> mapB = new HashMap<String, Object>();
|
||||
mapB.put("a", "tim");
|
||||
mapB.put("b", ImmutableSet.of());
|
||||
// This ensures that it is not outputting a diff of [b -> [null, []].
|
||||
assertThat(prettyPrintEntityDeepDiff(mapA, mapB)).isEqualTo("a -> [jim, tim]\n");
|
||||
}
|
||||
|
||||
@Test
|
||||
public void test_prettyPrintSetDiff_addedAndRemovedElements_objects() {
|
||||
DummyObject a = DummyObject.create("a");
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue