TEST_F(XPathAcceptanceTest, variables) { XPath xpath = compile("$variable"); xpath.bind_variable("variable", 5.2); ASSERT_DOUBLE_EQ(5.2, xpath.number()); }
TEST_F(XPathAcceptanceTest, invalid_function_throws_exception) { XPath xpath = compile("bogus()"); ASSERT_THROW(xpath.number(), UnknownXPathFunctionException); }
TEST_F(XPathAcceptanceTest, multiplicitive_math_operations) { XPath xpath = compile("5 mod 2 div 3 * 2"); ASSERT_DOUBLE_EQ(2/3.0, xpath.number()); }
TEST_F(XPathAcceptanceTest, unary_negation) { XPath xpath = compile("2 - -2"); ASSERT_DOUBLE_EQ(4.0, xpath.number()); }
TEST_F(XPathAcceptanceTest, additive_math_operations) { XPath xpath = compile("1 - 2 + 3"); ASSERT_DOUBLE_EQ(2.0, xpath.number()); }