Example usage for org.apache.commons.jxpath JXPathContext getValue

List of usage examples for org.apache.commons.jxpath JXPathContext getValue

Introduction

In this page you can find the example usage for org.apache.commons.jxpath JXPathContext getValue.

Prototype

public abstract Object getValue(String xpath);

Source Link

Document

Evaluates the xpath and returns the resulting object.

Usage

From source file:org.chiba.xml.xforms.ui.test.RangeTest.java

/**
 * Tests range bound to double./*from w  ww  .  ja  v  a  2  s  .  c  om*/
 *
 * @throws Exception if any error occurred during the test.
 */
public void testDouble() throws Exception {
    JXPathContext context = this.chibaBean.getContainer().getRootContext();

    assertEquals("-2", context.getValue("//xf:range[@id='range-5']/@xf:start"));
    assertEquals("2", context.getValue("//xf:range[@id='range-5']/@xf:end"));
    assertEquals("1", context.getValue("//xf:range[@id='range-5']/@xf:step"));
}

From source file:org.chiba.xml.xforms.ui.test.RangeTest.java

/**
 * Tests range bound to double.//from w w  w  .j av a  2  s.  co m
 *
 * @throws Exception if any error occurred during the test.
 */
public void testDoubleDefaults() throws Exception {
    JXPathContext context = this.chibaBean.getContainer().getRootContext();

    assertEquals("-2", context.getValue("//xf:range[@id='range-6']/@xf:start"));
    assertEquals("2", context.getValue("//xf:range[@id='range-6']/@xf:end"));
    assertEquals("1", context.getValue("//xf:range[@id='range-6']/@xf:step"));
}

From source file:org.chiba.xml.xforms.ui.UIElementStateTest.java

/**
 * Tests ui element state./*from  w w  w . j  a  v a2  s . com*/
 *
 * @throws Exception if any error occurred during the test.
 */
public void testInit() throws Exception {
    JXPathContext context = this.chibaBean.getContainer().getRootContext();
    assertEquals("item", context.getValue("//*[@id='input-existing']/chiba:data"));
    assertEquals("true", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:valid"));
    assertEquals("false", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:readonly"));
    assertEquals("false", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:required"));
    assertEquals("true", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:enabled"));
    assertEquals("xs:token", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:type"));

    assertEquals(null, this.valueChangedListener.getId());
    assertEquals(null, this.validListener.getId());
    assertEquals(null, this.invalidListener.getId());
    assertEquals(null, this.readonlyListener.getId());
    assertEquals(null, this.readwriteListener.getId());
    assertEquals(null, this.requiredListener.getId());
    assertEquals(null, this.optionalListener.getId());
    assertEquals(null, this.enabledListener.getId());
    assertEquals(null, this.disabledListener.getId());

    assertEquals(null, this.stateChangedListener.getId());
    assertEquals(null, this.stateChangedListener.getPropertyNames());
}

From source file:org.chiba.xml.xforms.ui.UIElementStateTest.java

/**
 * Tests ui element state with a missing instance node.
 *
 * @throws Exception if any error occurred during the test.
 */// w  w w .  ja  v a  2s .  c o  m
public void testInitMissing() throws Exception {
    JXPathContext context = this.chibaBean.getContainer().getRootContext();
    assertEquals("", context.getValue("//*[@id='input-missing']/chiba:data"));
    assertEquals("true", context.getValue("//*[@id='input-missing']/chiba:data/@chiba:valid"));
    assertEquals("false", context.getValue("//*[@id='input-missing']/chiba:data/@chiba:readonly"));
    assertEquals("false", context.getValue("//*[@id='input-missing']/chiba:data/@chiba:required"));
    assertEquals("false", context.getValue("//*[@id='input-missing']/chiba:data/@chiba:enabled"));
    assertEquals(Boolean.FALSE, context.getValue("boolean(//*[@id='input-missing']/chiba:data/@chiba:type)"));

    assertEquals(null, this.valueChangedListener.getId());
    assertEquals(null, this.validListener.getId());
    assertEquals(null, this.invalidListener.getId());
    assertEquals(null, this.readonlyListener.getId());
    assertEquals(null, this.readwriteListener.getId());
    assertEquals(null, this.requiredListener.getId());
    assertEquals(null, this.optionalListener.getId());
    assertEquals(null, this.enabledListener.getId());
    assertEquals(null, this.disabledListener.getId());

    assertEquals(null, this.stateChangedListener.getId());
    assertEquals(null, this.stateChangedListener.getPropertyNames());
}

From source file:org.chiba.xml.xforms.ui.UIElementStateTest.java

/**
 * Tests ui element state after inserting a missing instance node.
 *
 * @throws Exception if any error occurred during the test.
 *//*  www  .j ava 2  s  . com*/
public void testInsertMissing() throws Exception {
    EventTarget eventTarget = this.chibaBean.getContainer().lookup("input-missing").getTarget();
    register(eventTarget, false);
    this.chibaBean.dispatch("insert-missing", DOMEventNames.ACTIVATE);
    deregister(eventTarget, false);

    JXPathContext context = this.chibaBean.getContainer().getRootContext();
    assertEquals("item", context.getValue("//*[@id='input-missing']/chiba:data"));
    assertEquals("true", context.getValue("//*[@id='input-missing']/chiba:data/@chiba:valid"));
    assertEquals("false", context.getValue("//*[@id='input-missing']/chiba:data/@chiba:readonly"));
    assertEquals("false", context.getValue("//*[@id='input-missing']/chiba:data/@chiba:required"));
    assertEquals("true", context.getValue("//*[@id='input-missing']/chiba:data/@chiba:enabled"));
    assertEquals("xs:token", context.getValue("//*[@id='input-missing']/chiba:data/@chiba:type"));

    assertEquals(null, this.valueChangedListener.getId());
    assertEquals(null, this.validListener.getId());
    assertEquals(null, this.invalidListener.getId());
    assertEquals(null, this.readonlyListener.getId());
    assertEquals(null, this.readwriteListener.getId());
    assertEquals(null, this.requiredListener.getId());
    assertEquals(null, this.optionalListener.getId());
    assertEquals(null, this.enabledListener.getId());
    assertEquals(null, this.disabledListener.getId());

    assertEquals("input-missing", this.stateChangedListener.getId());
    assertEquals(3, this.stateChangedListener.getPropertyNames().size());
    assertEquals("item", this.stateChangedListener.getContext("value"));
    assertEquals("true", this.stateChangedListener.getContext("enabled"));
    assertEquals("xs:token", this.stateChangedListener.getContext("type"));
}

From source file:org.chiba.xml.xforms.ui.UIElementStateTest.java

/**
 * Tests ui element state after deleting an existing instance node.
 *
 * @throws Exception if any error occurred during the test.
 *///w w w  . j  av  a2  s  .c  o m
public void testDeleteExisting() throws Exception {
    EventTarget eventTarget = this.chibaBean.getContainer().lookup("input-existing").getTarget();
    register(eventTarget, false);
    this.chibaBean.dispatch("delete-existing", DOMEventNames.ACTIVATE);
    register(eventTarget, false);

    JXPathContext context = this.chibaBean.getContainer().getRootContext();
    assertEquals("", context.getValue("//*[@id='input-existing']/chiba:data"));
    assertEquals("true", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:valid"));
    assertEquals("false", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:readonly"));
    assertEquals("false", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:required"));
    assertEquals("false", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:enabled"));
    assertEquals(Boolean.FALSE, context.getValue("boolean(//*[@id='input-existing']/chiba:data/@chiba:type)"));

    assertEquals(null, this.valueChangedListener.getId());
    assertEquals(null, this.validListener.getId());
    assertEquals(null, this.invalidListener.getId());
    assertEquals(null, this.readonlyListener.getId());
    assertEquals(null, this.readwriteListener.getId());
    assertEquals(null, this.requiredListener.getId());
    assertEquals(null, this.optionalListener.getId());
    assertEquals(null, this.enabledListener.getId());
    assertEquals(null, this.disabledListener.getId());

    assertEquals("input-existing", this.stateChangedListener.getId());
    assertEquals(3, this.stateChangedListener.getPropertyNames().size());
    assertEquals(null, this.stateChangedListener.getContext("value"));
    assertEquals("false", this.stateChangedListener.getContext("enabled"));
    assertEquals(null, this.stateChangedListener.getContext("type"));
}

From source file:org.chiba.xml.xforms.ui.UIElementStateTest.java

/**
 * Tests value change notification.//from w w w  .j  a v a  2  s  . c om
 *
 * @throws Exception if any error occurred during the test.
 */
public void testValueChange() throws Exception {
    EventTarget eventTarget = this.chibaBean.getContainer().lookup("input-existing").getTarget();
    register(eventTarget, false);
    this.chibaBean.updateControlValue("input-existing", "foobar");
    deregister(eventTarget, false);

    JXPathContext context = this.chibaBean.getContainer().getRootContext();
    assertEquals("foobar", context.getValue("//*[@id='input-existing']/chiba:data"));
    assertEquals("true", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:valid"));
    assertEquals("false", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:readonly"));
    assertEquals("false", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:required"));
    assertEquals("true", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:enabled"));
    assertEquals("xs:token", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:type"));

    assertEquals("input-existing", this.valueChangedListener.getId());
    assertEquals("input-existing", this.validListener.getId());
    assertEquals(null, this.invalidListener.getId());
    assertEquals(null, this.readonlyListener.getId());
    assertEquals("input-existing", this.readwriteListener.getId());
    assertEquals(null, this.requiredListener.getId());
    assertEquals("input-existing", this.optionalListener.getId());
    assertEquals("input-existing", this.enabledListener.getId());
    assertEquals(null, this.disabledListener.getId());

    assertEquals(null, this.stateChangedListener.getId());
    assertEquals(null, this.stateChangedListener.getPropertyNames());
}

From source file:org.chiba.xml.xforms.ui.UIElementStateTest.java

/**
 * Tests value change notification after a setvalue action.
 *
 * @throws Exception if any error occurred during the test.
 *//*  www.  ja v a 2s.com*/
public void testValueChangeTriggered() throws Exception {
    EventTarget eventTarget = this.chibaBean.getContainer().lookup("input-trigger").getTarget();
    register(eventTarget, false);
    this.chibaBean.dispatch("update-trigger", DOMEventNames.ACTIVATE);
    deregister(eventTarget, false);

    JXPathContext context = this.chibaBean.getContainer().getRootContext();
    assertEquals("foobar", context.getValue("//*[@id='input-trigger']/chiba:data"));
    assertEquals("true", context.getValue("//*[@id='input-trigger']/chiba:data/@chiba:valid"));
    assertEquals("false", context.getValue("//*[@id='input-trigger']/chiba:data/@chiba:readonly"));
    assertEquals("false", context.getValue("//*[@id='input-trigger']/chiba:data/@chiba:required"));
    assertEquals("true", context.getValue("//*[@id='input-trigger']/chiba:data/@chiba:enabled"));
    assertEquals("xs:string", context.getValue("//*[@id='input-trigger']/chiba:data/@chiba:type"));

    assertEquals("input-trigger", this.valueChangedListener.getId());
    assertEquals("input-trigger", this.validListener.getId());
    assertEquals(null, this.invalidListener.getId());
    assertEquals(null, this.readonlyListener.getId());
    assertEquals("input-trigger", this.readwriteListener.getId());
    assertEquals(null, this.requiredListener.getId());
    assertEquals("input-trigger", this.optionalListener.getId());
    assertEquals("input-trigger", this.enabledListener.getId());
    assertEquals(null, this.disabledListener.getId());

    assertEquals("input-trigger", this.stateChangedListener.getId());
    assertEquals(1, this.stateChangedListener.getPropertyNames().size());
    assertEquals("foobar", this.stateChangedListener.getContext("value"));
}

From source file:org.chiba.xml.xforms.ui.UIElementStateTest.java

/**
 * Tests value change notification after recalculation.
 *
 * @throws Exception if any error occurred during the test.
 *//*from  w ww  .j av  a2 s. c o m*/
public void testValueChangeCalculated() throws Exception {
    EventTarget eventTarget = this.chibaBean.getContainer().lookup("input-calculate").getTarget();
    register(eventTarget, false);
    this.chibaBean.dispatch("update-trigger", DOMEventNames.ACTIVATE);
    deregister(eventTarget, false);

    JXPathContext context = this.chibaBean.getContainer().getRootContext();
    assertEquals("foobar", context.getValue("//*[@id='input-calculate']/chiba:data"));
    assertEquals("true", context.getValue("//*[@id='input-calculate']/chiba:data/@chiba:valid"));
    assertEquals("false", context.getValue("//*[@id='input-calculate']/chiba:data/@chiba:readonly"));
    assertEquals("false", context.getValue("//*[@id='input-calculate']/chiba:data/@chiba:required"));
    assertEquals("true", context.getValue("//*[@id='input-calculate']/chiba:data/@chiba:enabled"));
    assertEquals("xs:string", context.getValue("//*[@id='input-calculate']/chiba:data/@chiba:type"));

    assertEquals("input-calculate", this.valueChangedListener.getId());
    assertEquals("input-calculate", this.validListener.getId());
    assertEquals(null, this.invalidListener.getId());
    assertEquals(null, this.readonlyListener.getId());
    assertEquals("input-calculate", this.readwriteListener.getId());
    assertEquals(null, this.requiredListener.getId());
    assertEquals("input-calculate", this.optionalListener.getId());
    assertEquals("input-calculate", this.enabledListener.getId());
    assertEquals(null, this.disabledListener.getId());

    assertEquals("input-calculate", this.stateChangedListener.getId());
    assertEquals(1, this.stateChangedListener.getPropertyNames().size());
    assertEquals("foobar", this.stateChangedListener.getContext("value"));
}

From source file:org.chiba.xml.xforms.ui.UIElementStateTest.java

/**
 * Tests valid notification.//from w  w w  .  j a  va  2s  . c om
 *
 * @throws Exception if any error occurred during the test.
 */
public void testValidNotification() throws Exception {
    this.chibaBean.updateControlValue("input-constraint", "false");
    EventTarget eventTarget = this.chibaBean.getContainer().lookup("input-existing").getTarget();
    register(eventTarget, false);
    this.chibaBean.updateControlValue("input-constraint", "true");
    deregister(eventTarget, false);

    JXPathContext context = this.chibaBean.getContainer().getRootContext();
    assertEquals("item", context.getValue("//*[@id='input-existing']/chiba:data"));
    assertEquals("true", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:valid"));
    assertEquals("false", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:readonly"));
    assertEquals("false", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:required"));
    assertEquals("true", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:enabled"));
    assertEquals("xs:token", context.getValue("//*[@id='input-existing']/chiba:data/@chiba:type"));

    assertEquals(null, this.valueChangedListener.getId());
    assertEquals("input-existing", this.validListener.getId());
    assertEquals(null, this.invalidListener.getId());
    assertEquals(null, this.readonlyListener.getId());
    assertEquals(null, this.readwriteListener.getId());
    assertEquals(null, this.requiredListener.getId());
    assertEquals(null, this.optionalListener.getId());
    assertEquals(null, this.enabledListener.getId());
    assertEquals(null, this.disabledListener.getId());

    assertEquals("input-existing", this.stateChangedListener.getId());
    assertEquals(1, this.stateChangedListener.getPropertyNames().size());
    assertEquals("true", this.stateChangedListener.getContext("valid"));
}