Esempio n. 1
0
  @Test
  public void testNullCollection() throws MergerException {
    List<SubMergeable> subMergeablesTwo = new ArrayList<SubMergeable>();

    subMergeablesTwo.add(buildSubMergeable("1", "seven", "eight", true));

    MergeableRoot one = buildMergeableRoot("3", "one", "two", 5, null, true);
    MergeableRoot two = buildMergeableRoot("3", null, null, 6, subMergeablesTwo, true);

    MergeableRoot merged = merger.merge(MergeableRoot.class, one, two);

    assertEquals("one", merged.getDontMerge());
    assertNull(merged.getStringValue());
    assertEquals(6, merged.getIntValue());
    assertEquals(1, merged.getSubMergeables().size());
    SubMergeable subMergeable = merged.getSubMergeables().iterator().next();
    assertEquals("seven", subMergeable.getValue());
    assertEquals("eight", subMergeable.getDontMergeValue());
  }
Esempio n. 2
0
  @Test
  public void testNonMatchingMerge() throws MergerException {
    List<SubMergeable> subMergeablesOne = new ArrayList<SubMergeable>();
    List<SubMergeable> subMergeablesTwo = new ArrayList<SubMergeable>();

    subMergeablesOne.add(buildSubMergeable("1", "five", "six", true));
    subMergeablesTwo.add(buildSubMergeable("2", "seven", "eight", true));

    MergeableRoot one = buildMergeableRoot("3", "one", "two", 5, subMergeablesOne, true);
    MergeableRoot two = buildMergeableRoot("4", "three", "four", 6, subMergeablesTwo, true);

    MergeableRoot merged = merger.merge(MergeableRoot.class, one, two);

    assertEquals("one", merged.getDontMerge());
    assertEquals("four", merged.getStringValue());
    assertEquals(6, merged.getIntValue());
    assertEquals(1, merged.getSubMergeables().size());
    SubMergeable subMergeableTwo = buildSubMergeableMap(merged.getSubMergeables()).get("2");
    assertEquals("seven", subMergeableTwo.getValue());
    assertEquals("eight", subMergeableTwo.getDontMergeValue());
  }
Esempio n. 3
0
  @Test
  public void testPreviouslyUntagWritten() throws MergerException {
    List<SubMergeable> subMergeablesOne = new ArrayList<SubMergeable>();
    List<SubMergeable> subMergeablesTwo = new ArrayList<SubMergeable>();

    subMergeablesOne.add(buildSubMergeable("1", "five", "six", false));
    subMergeablesOne.add(buildSubMergeable("2", "nine", "ten", false));
    subMergeablesTwo.add(buildSubMergeable("1", "seven", "eight", true));

    MergeableRoot one = buildMergeableRoot("2", "one", "two", 5, subMergeablesOne, false);
    MergeableRoot two = buildMergeableRoot("2", "three", "four", 6, subMergeablesTwo, true);

    MergeableRoot merged = merger.merge(MergeableRoot.class, one, two);

    assertEquals("one", merged.getDontMerge());
    assertEquals("two", merged.getStringValue());
    assertEquals(5, merged.getIntValue());
    assertEquals(2, merged.getSubMergeables().size());
    SubMergeable subMergeable = buildSubMergeableMap(merged.getSubMergeables()).get("1");
    assertEquals("five", subMergeable.getValue());
    assertEquals("six", subMergeable.getDontMergeValue());
  }