Package org.openiaml.model.tests.inference.model0_5

Source Code of org.openiaml.model.tests.inference.model0_5.FormSynchroniseSyncWire

/**
*
*/
package org.openiaml.model.tests.inference.model0_5;

import org.openiaml.model.model.visual.Frame;
import org.openiaml.model.model.visual.InputForm;
import org.openiaml.model.model.visual.InputTextField;
import org.openiaml.model.tests.inference.InferenceTestCase;

/**
* {@model InputForm}s connected together with a {@model SyncWire} should have
* {@model InputTextField}s also duplicated and synced together.
*
* @author jmwright
*/
public class FormSynchroniseSyncWire extends InferenceTestCase {

  @Override
  protected void setUp() throws Exception {
    super.setUp();
    root = loadAndInfer(FormSynchroniseSyncWire.class);
  }

  /**
   * Test the initial model.
   *
   * @throws Exception
   */
  public void testInitial() throws Exception {

    Frame home = assertHasFrame(root, "Home");

    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");

    assertNotGenerated(assertHasSyncWire(root, form1, form2));
    assertNotGenerated(assertHasSyncWire(root, form2, form3));

    // not a circle
    assertHasNoSyncWire(root, form1, form3);

    assertNotGenerated(form1);
    assertNotGenerated(form2);
    assertNotGenerated(form3);
    assertNotGenerated(field1);
    assertNotGenerated(field2);
    assertNotGenerated(field3);
    assertNotGenerated(field4);
    assertNotGenerated(field5);
    assertNotGenerated(field6);

  }

  /**
   * Test Form 1.
   *
   * @throws Exception
   */
  public void testForm1() throws Exception {

    Frame home = assertHasFrame(root, "Home");

    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 = form1;
    //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, field1, new1);
    //assertHasSyncWire(root, field2, new2);
    assertHasSyncWire(root, field3, new3);
    assertHasSyncWire(root, field4, new4);

    // form1.field5 does not -> form3.field5;
    // it goes form1.field5 -> form2.field5 -> form3.field5
    assertHasNoSyncWire(root, field5, new5);
    assertHasNoSyncWire(root, field6, new6);

    // check
    InputTextField field5_a = assertHasInputTextField(form2, "field 5");
    InputTextField field6_a = assertHasInputTextField(form2, "field 6");

    assertHasSyncWire(root, new5, field5_a);
    assertHasSyncWire(root, new6, field6_a);

    assertHasSyncWire(root, field5_a, field5);
    assertHasSyncWire(root, field6_a, field6);

  }

  /**
   * Test Form 2.
   *
   * @throws Exception
   */
  public void testForm2() throws Exception {

    Frame home = assertHasFrame(root, "Home");

    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 = form2;
    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, field1, new1);
    assertHasSyncWire(root, field2, new2);
    //assertHasSyncWire(root, field3, new3);
    //assertHasSyncWire(root, field4, new4);
    assertHasSyncWire(root, field5, new5);
    assertHasSyncWire(root, field6, new6);

  }

  /**
   * Test Form 3.
   *
   * @throws Exception
   */
  public void testForm3() throws Exception {

    Frame home = assertHasFrame(root, "Home");

    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);
    assertHasSyncWire(root, field2_a, field2);

  }

}
TOP

Related Classes of org.openiaml.model.tests.inference.model0_5.FormSynchroniseSyncWire

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.