Commit 47e037d4 authored by Piotr Caban's avatar Piotr Caban Committed by Alexandre Julliard

msxml3: Implemented xmlnode_get_nodeTypedValue 'fixed.14.4' data type handling.

parent 44980403
...@@ -964,6 +964,8 @@ inline HRESULT VARIANT_from_xmlChar(xmlChar *str, VARIANT *v, BSTR type) ...@@ -964,6 +964,8 @@ inline HRESULT VARIANT_from_xmlChar(xmlChar *str, VARIANT *v, BSTR type)
if(!lstrcmpiW(type, szInt)) if(!lstrcmpiW(type, szInt))
V_VT(v) = VT_I4; V_VT(v) = VT_I4;
else if(!lstrcmpiW(type, szFixed))
V_VT(v) = VT_CY;
else else
{ {
FIXME("Type handling not yet implemented\n"); FIXME("Type handling not yet implemented\n");
......
...@@ -154,6 +154,7 @@ static const CHAR szTypeValueXML[] = ...@@ -154,6 +154,7 @@ static const CHAR szTypeValueXML[] =
" <number dt:dt=\"number\">12.44</number>\n" " <number dt:dt=\"number\">12.44</number>\n"
" <number2 dt:dt=\"NUMbEr\">-3.71e3</number2>\n" " <number2 dt:dt=\"NUMbEr\">-3.71e3</number2>\n"
" <int dt:dt=\"int\">-13</int>\n" " <int dt:dt=\"int\">-13</int>\n"
" <fixed dt:dt=\"fixed.14.4\">7322.9371</fixed>\n"
"</root>"; "</root>";
static const CHAR szBasicTransformSSXMLPart1[] = static const CHAR szBasicTransformSSXMLPart1[] =
...@@ -4051,6 +4052,27 @@ static void test_NodeTypeValue(void) ...@@ -4051,6 +4052,27 @@ static void test_NodeTypeValue(void)
IXMLDOMNode_Release(pNode); IXMLDOMNode_Release(pNode);
} }
hr = IXMLDOMDocument2_selectSingleNode(doc, _bstr_("root/fixed"), &pNode);
ok(hr == S_OK, "ret %08x\n", hr );
if(hr == S_OK)
{
VARIANT hlp_in, hlp_out;
V_VT(&hlp_in) = VT_BSTR;
V_BSTR(&hlp_in) = _bstr_("7322.9371");
V_VT(&hlp_out) = VT_CY;
ok(VariantChangeType(&hlp_out, &hlp_in, 0, VT_CY) == S_OK, "VariantChangeType failed\n");
VariantClear(&hlp_in);
hr = IXMLDOMNode_get_nodeTypedValue(pNode, &v);
ok(hr == S_OK, "ret %08x\n", hr );
ok(V_VT(&v) == VT_CY, "incorrect type\n");
ok(VarCyCmp(V_CY(&v), V_CY(&hlp_out)) == VARCMP_EQ, "incorrect value\n");
VariantClear(&hlp_out);
VariantClear(&v);
IXMLDOMNode_Release(pNode);
}
} }
IXMLDOMDocument2_Release(doc); IXMLDOMDocument2_Release(doc);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment