Ejemplo n.º 1
0
  public WsdlMessageAssertion moveAssertion(int ix, int offset) {
    // int ix = assertions.indexOf( assertion );
    WsdlMessageAssertion assertion = getAssertionAt(ix);
    if (ix == -1) {
      throw new RuntimeException("assertion [" + assertion.getName() + "] not available ");
    }
    // if first selected can't move up and if last selected can't move down
    if ((ix == 0 && offset == -1) || (ix == assertions.size() - 1 && offset == 1)) {
      return assertion;
    }
    TestAssertionConfig conf = assertion.getConfig();
    XmlObject newXmlObject = conf.copy();

    TestAssertionConfig newConf = TestAssertionConfig.Factory.newInstance();
    newConf.set(newXmlObject);
    WsdlMessageAssertion newAssertion =
        TestAssertionRegistry.getInstance().buildAssertion(newConf, assertable);

    assertion.removePropertyChangeListener(this);
    assertions.remove(ix);

    assertion.release();

    assertableConfig.removeAssertion(ix);

    newAssertion.addPropertyChangeListener(this);
    assertions.add(ix + offset, newAssertion);

    assertableConfig.insertAssertion(newConf, ix + offset);
    fireAssertionMoved(newAssertion, ix, offset);
    return newAssertion;
  }
Ejemplo n.º 2
0
  public AssertionsSupport(Assertable assertable, AssertableConfig assertableConfig) {
    this.assertable = assertable;
    this.assertableConfig = assertableConfig;

    for (TestAssertionConfig rac : assertableConfig.getAssertionList()) {
      addWsdlAssertion(rac);
    }
  }
Ejemplo n.º 3
0
  public TestAssertion cloneAssertion(TestAssertion source, String name) {
    TestAssertionConfig conf = assertableConfig.addNewAssertion();
    conf.set(((WsdlMessageAssertion) source).getConfig());
    conf.setName(name);

    WsdlMessageAssertion result = addWsdlAssertion(conf);
    fireAssertionAdded(result);
    return result;
  }
Ejemplo n.º 4
0
  public void refresh() {
    int mod = 0;

    List<TestAssertionConfig> assertionList = assertableConfig.getAssertionList();

    for (int i = 0; i < assertionList.size(); i++) {
      TestAssertionConfig config = assertionList.get(i);
      if (TestAssertionRegistry.getInstance().canBuildAssertion(config)) {
        assertions.get(i - mod).updateConfig(config);
      } else mod++;
    }
  }
Ejemplo n.º 5
0
  public void removeAssertion(WsdlMessageAssertion assertion) {
    int ix = assertions.indexOf(assertion);
    if (ix == -1) {
      throw new RuntimeException("assertion [" + assertion.getName() + "] not available ");
    }

    assertion.removePropertyChangeListener(this);
    assertions.remove(ix);
    fireAssertionRemoved(assertion);

    assertion.release();

    assertableConfig.removeAssertion(ix);
  }
Ejemplo n.º 6
0
  public WsdlMessageAssertion importAssertion(
      WsdlMessageAssertion source, boolean overwrite, boolean createCopy, String newName) {
    TestAssertionConfig conf = assertableConfig.addNewAssertion();
    conf.set(source.getConfig());
    conf.setName(newName);
    if (createCopy && conf.isSetId()) conf.unsetId();

    if (!source.isAllowMultiple()) {
      List<WsdlMessageAssertion> existing = getAssertionsOfType(source.getClass());
      if (!existing.isEmpty() && !overwrite) return null;

      while (!existing.isEmpty()) {
        removeAssertion(existing.remove(0));
      }
    }

    WsdlMessageAssertion result = addWsdlAssertion(conf);
    fireAssertionAdded(result);
    return result;
  }
Ejemplo n.º 7
0
  public WsdlMessageAssertion addWsdlAssertion(String assertionLabel) {
    try {
      TestAssertionConfig assertionConfig = assertableConfig.addNewAssertion();
      assertionConfig.setType(
          TestAssertionRegistry.getInstance().getAssertionTypeForName(assertionLabel));

      String name = assertionLabel;
      while (getAssertionByName(name.trim()) != null) {
        name =
            UISupport.prompt(
                "Specify unique name of Assertion",
                "Rename Assertion",
                assertionLabel
                    + " "
                    + (getAssertionsOfType(
                            TestAssertionRegistry.getInstance()
                                .getAssertionClassType(assertionConfig))
                        .size()));
        if (name == null) {
          return null;
        }
      }
      WsdlMessageAssertion assertion = addWsdlAssertion(assertionConfig);
      if (assertion == null) return null;

      assertionConfig.setName(name);
      assertion.updateConfig(assertionConfig);

      if (assertion != null) {
        fireAssertionAdded(assertion);
      }

      return assertion;
    } catch (Exception e) {
      SoapUI.logError(e);
      return null;
    }
  }