InputForm form1 = assertHasInputForm(home, "form 1");
InputForm form2 = assertHasInputForm(home, "form 2");
InputForm form3 = assertHasInputForm(home, "form 3");
InputTextField field1 = assertHasInputTextField(form1, "field 1");
InputTextField field2 = assertHasInputTextField(form1, "field 2");
InputTextField field3 = assertHasInputTextField(form2, "field 3");
InputTextField field4 = assertHasInputTextField(form2, "field 4");
//InputTextField field5 = assertHasInputTextField(form3, "field 5");
//InputTextField field6 = assertHasInputTextField(form3, "field 6");
// created on this form
InputForm target = form3;
InputTextField new1 = assertHasInputTextField(target, "field 1");
InputTextField new2 = assertHasInputTextField(target, "field 2");
InputTextField new3 = assertHasInputTextField(target, "field 3");
InputTextField new4 = assertHasInputTextField(target, "field 4");
//InputTextField new5 = assertHasInputTextField(target, "field 5");
//InputTextField new6 = assertHasInputTextField(target, "field 6");
// and connected
assertHasSyncWire(root, field3, new3);
assertHasSyncWire(root, field4, new4);
//assertHasSyncWire(root, field5, new5);
//assertHasSyncWire(root, field6, new6);
// form3.field1 does not -> form1.field1;
// it goes form3.field1 -> form2.field1 -> form1.field1
assertHasNoSyncWire(root, field1, new1);
assertHasNoSyncWire(root, field2, new2);
// check
InputTextField field1_a = assertHasInputTextField(form2, "field 1");
InputTextField field2_a = assertHasInputTextField(form2, "field 2");
assertHasSyncWire(root, new1, field1_a);
assertHasSyncWire(root, new2, field2_a);
assertHasSyncWire(root, field1_a, field1);