Skip to content

Commit 03e7360

Browse files
committed
Add failing unit test, tweak releated existing test (#113)
1 parent 3798670 commit 03e7360

File tree

1 file changed

+31
-3
lines changed

1 file changed

+31
-3
lines changed

metafix/src/test/java/org/metafacture/metafix/MetafixRecordTest.java

Lines changed: 31 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -676,7 +676,7 @@ public void appendWithAsteriksWildcardAtTheEnd() {
676676
}
677677

678678
@Test
679-
// See https://github.com/metafacture/metafacture-fix/pull/142
679+
@MetafixToDo("See https://github.com/metafacture/metafacture-fix/pull/113")
680680
public void shouldCopyArrayFieldWithoutAsterisk() {
681681
MetafixTestHelpers.assertFix(streamReceiver, Arrays.asList(
682682
"set_array('TEST_TWO[]')",
@@ -691,23 +691,51 @@ public void shouldCopyArrayFieldWithoutAsterisk() {
691691
i.endEntity();
692692
i.endRecord();
693693
},
694-
o -> {
694+
(o, f) -> {
695695
o.get().startRecord("1");
696696
o.get().startEntity("test[]");
697697
o.get().literal("1", "One");
698698
o.get().literal("2", "Two");
699699
o.get().literal("3", "Three");
700700
o.get().endEntity();
701701
o.get().startEntity("TEST_TWO[]");
702+
o.get().startEntity("1");
702703
o.get().literal("1", "One");
703704
o.get().literal("2", "Two");
704705
o.get().literal("3", "Three");
705-
o.get().endEntity();
706+
f.apply(2).endEntity();
706707
o.get().endRecord();
707708
}
708709
);
709710
}
710711

712+
@Test
713+
@MetafixToDo("See https://github.com/metafacture/metafacture-fix/issues/113")
714+
public void copyFieldArrayOfObjectsAndListNewArrayOfObjectsAndMoveSubfield() {
715+
MetafixTestHelpers.assertFix(streamReceiver, Arrays.asList(
716+
"copy_field('author[]','creator[]')",
717+
"do list(path:'creator[]')",
718+
" move_field('name','label')",
719+
"end",
720+
"retain('creator[]')"),
721+
i -> {
722+
i.startRecord("1");
723+
i.startEntity("author[]");
724+
i.startEntity("1");
725+
i.literal("name", "A University");
726+
i.endEntity();
727+
i.endEntity();
728+
i.endRecord();
729+
}, (o, f) -> {
730+
o.get().startRecord("1");
731+
o.get().startEntity("creator[]");
732+
o.get().startEntity("1");
733+
o.get().literal("label", "A University");
734+
f.apply(2).endEntity();
735+
o.get().endRecord();
736+
});
737+
}
738+
711739
@Test
712740
// See https://github.com/metafacture/metafacture-fix/issues/121
713741
public void shouldCopyArrayFieldWithAsterisk() {

0 commit comments

Comments
 (0)