@Override public boolean match(Var var, Expr expr, MapResult resultMap) { if ( ! expr.getConstant().isNumber() ) throw new NoExprMatch("ActionMatchNumeric: Not a number: "+expr) ; return super.match(var, expr, resultMap) ; } }
@Test public void testDecimal1() { NodeValue v = NodeValue.makeDecimal(new BigDecimal("1.3")); assertTrue("Not a number: " + v, v.isNumber()); assertTrue("Not a double: " + v, v.isDecimal()); assertFalse("Is a node: " + v, v.hasNode()); }
@Test public void js_3() { NodeValue nv = eval("combine", "1", "2"); NodeValue nvx = nv("3"); assertTrue(nv.isNumber()); assertDatatype(nv, XSDDatatype.XSDinteger); assertEquals(nvx, nv); }
@Test public void testInt2() { NodeValue v = NodeValue.makeNodeInteger(5); assertTrue("Not a number: " + v, v.isNumber()); assertTrue("Not an integer: " + v, v.isInteger()); assertTrue("Not a node: " + v, v.hasNode()); }
@Test public void testNodeInt2() { NodeValue v = NodeValue.makeNode("57", XSDDatatype.XSDdouble); assertTrue("Not a number: " + v, v.isNumber()); assertTrue("Not a double: " + v, v.isDouble()); assertTrue("Not a node: " + v, v.hasNode()); }
@Test public void testNodeInt7() { // Leading/trail whitespace. NodeValue v = NodeValue.makeNodeInteger(" 18 "); assertTrue("Not a number: " + v, v.isNumber()); assertTrue("Not an integer: " + v, v.isInteger()); assertTrue("Not a node: " + v, v.hasNode()); }
@Test public void testDouble1() { NodeValue v = NodeValue.makeDouble(5); assertTrue("Not a number: " + v, v.isNumber()); assertTrue("Not a double: " + v, v.isDouble()); assertFalse("No node: " + v, v.hasNode()); }
@Test public void testDecimal2() { NodeValue v = NodeValue.makeNodeDecimal("1.3"); assertTrue("Not a number: " + v, v.isNumber()); assertTrue("Not a double: " + v, v.isDecimal()); assertTrue("Not a node: " + v, v.hasNode()); }
@Test public void testNodeInt6() { // Leading/trail whitespace. NodeValue v = NodeValue.makeNodeInteger(" 18"); assertTrue("Not a number: " + v, v.isNumber()); assertTrue("Not an integer: " + v, v.isInteger()); assertTrue("Not a node: " + v, v.hasNode()); }
@Test public void testDouble2() { NodeValue v = NodeValue.makeNodeDouble(5); assertTrue("Not a number: " + v, v.isNumber()); assertTrue("Not a double: " + v, v.isDouble()); assertTrue("Not a node: " + v, v.hasNode()); }
@Test public void testNodeInt8() { // Internal whitespace. Not a number. NodeValue v = NodeValue.makeNodeInteger("1 8"); assertFalse("A number!: " + v, v.isNumber()); assertFalse("An integer!: " + v, v.isInteger()); assertTrue("Not a node: " + v, v.hasNode()); }
@Test public void testNodeDouble4() { // Leading/trail whitespace. NodeValue v = NodeValue.makeNode(" 057.0e0 ", XSDDatatype.XSDdouble); assertTrue("Not a number: " + v, v.isNumber()); assertTrue("Not a double: " + v, v.isDouble()); assertTrue("Not a node: " + v, v.hasNode()); }
@Test public void testFloat1() { NodeValue v = NodeValue.makeFloat(5); assertTrue("Not a number: " + v, v.isNumber()); assertTrue("Not a float: " + v, v.isFloat()); assertTrue("Float not a double: " + v, v.isDouble()); assertFalse("No node: " + v, v.hasNode()); }
@Test public void testNodeInt3() { NodeValue v = NodeValue.makeNode("57", XSDDatatype.XSDinteger); assertTrue("Not a number: " + v, v.isNumber()); assertTrue("Not an integer: " + v, v.isInteger()); assertTrue("Not a node: " + v, v.hasNode()); String actualStr = v.asQuotedString(); assertEquals("Print form mismatch", "57", actualStr); }
@Test public void testNodeInt5() { // Legal as a bare integer but not canonical form NodeValue v = NodeValue.makeNodeInteger("018"); assertTrue("Not a number: " + v, v.isNumber()); assertTrue("Not an integer: " + v, v.isInteger()); assertTrue("Not a node: " + v, v.hasNode()); String actualStr = v.asQuotedString(); assertEquals("Print form mismatch", "018", actualStr); }
@Test public void testFloat2() { NodeValue v = NodeValue.makeNodeFloat(5); assertTrue("Not a number: " + v, v.isNumber()); assertTrue("Not a float: " + v, v.isDouble()); assertTrue("Float not a double: " + v, v.isDouble()); assertTrue("Not a node: " + v, v.hasNode()); }
@Test public void testNodeInt4() { NodeValue v = NodeValue.makeNodeInteger(18); assertTrue("Not a number: " + v, v.isNumber()); assertTrue("Not an integer: " + v, v.isInteger()); assertTrue("Not a node: " + v, v.hasNode()); String actualStr = v.asQuotedString(); assertEquals("Print form mismatch", "18", actualStr); }
@Test public void testNodeDouble3() { // Note input form is legal but not canonical as a bare FP NodeValue v = NodeValue.makeNode("057.0e0", XSDDatatype.XSDdouble); assertTrue("Not a number: " + v, v.isNumber()); assertTrue("Not a double: " + v, v.isDouble()); assertTrue("Not a node: " + v, v.hasNode()); String actualStr = v.asQuotedString(); assertEquals("Print form mismatch", "057.0e0", actualStr); }
@Test public void testNodeDouble1() { // Note input form is legal and canomical as a lexical form double NodeValue v = NodeValue.makeNode("57.0e0", XSDDatatype.XSDdouble); assertTrue("Not a number: " + v, v.isNumber()); assertTrue("Not a double: " + v, v.isDouble()); assertTrue("Not a node: " + v, v.hasNode()); String actualStr = v.asQuotedString(); assertEquals("Print form mismatch", "57.0e0", actualStr) ; // "\"57\"^^<"+XSDDatatype.XSDdouble.getURI()+">", // actualStr); }
@Test public void testNodeDouble2() { // Note input form is not legal as a lexical form double NodeValue v = NodeValue.makeNode("57", XSDDatatype.XSDdouble); assertTrue("Not a number: " + v, v.isNumber()); assertTrue("Not a double: " + v, v.isDouble()); assertTrue("Not a node: " + v, v.hasNode()); String actualStr = v.asQuotedString(); assertEquals("Print form mismatch", "\"57\"^^<" + XSDDatatype.XSDdouble.getURI() + ">", actualStr); }