mirror of
https://github.com/reactos/reactos.git
synced 2025-05-22 10:35:54 +00:00
[MSHTML_WINETEST]
* Sync with Wine 1.7.27. CORE-8540 svn path=/trunk/; revision=64459
This commit is contained in:
parent
a197629da8
commit
e81c7e8867
11 changed files with 1237 additions and 94 deletions
|
@ -2702,12 +2702,6 @@ static BOOL check_ie(void)
|
|||
IHTMLDocument5 *doc;
|
||||
HRESULT hres;
|
||||
|
||||
static const WCHAR xW[] = {'x',0};
|
||||
static const WCHAR yW[] = {'y',0};
|
||||
|
||||
if(!lstrcmpW(xW, yW))
|
||||
return FALSE;
|
||||
|
||||
hres = CoCreateInstance(&CLSID_HTMLDocument, NULL, CLSCTX_INPROC_SERVER|CLSCTX_INPROC_HANDLER,
|
||||
&IID_IHTMLDocument5, (void**)&doc);
|
||||
if(FAILED(hres))
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -88,7 +88,6 @@ DEFINE_EXPECT(iframe_onload);
|
|||
static HWND container_hwnd = NULL;
|
||||
static IHTMLWindow2 *window;
|
||||
static IOleDocumentView *view;
|
||||
static BOOL xy_todo;
|
||||
static BOOL is_ie9plus;
|
||||
|
||||
typedef struct {
|
||||
|
@ -1638,8 +1637,6 @@ static void test_onclick(IHTMLDocument2 *doc)
|
|||
CHECK_CALLED(invoke_onclick);
|
||||
}
|
||||
|
||||
xy_todo = TRUE;
|
||||
|
||||
SET_EXPECT(div_onclick);
|
||||
SET_EXPECT(div_onclick_attached);
|
||||
SET_EXPECT(body_onclick);
|
||||
|
@ -1847,7 +1844,7 @@ static void test_imgload(IHTMLDocument2 *doc)
|
|||
ok(V_DISPATCH(&v) == (IDispatch*)&img_onerror_obj, "V_DISPATCH(onerror) != onerrorFunc\n");
|
||||
VariantClear(&v);
|
||||
|
||||
str = a2bstr("http://www.winehq.org/images/winehq_logo_text.png");
|
||||
str = a2bstr("https://www.winehq.org/images/winehq_logo_text.png");
|
||||
hres = IHTMLImgElement_put_src(img, str);
|
||||
ok(hres == S_OK, "put_src failed: %08x\n", hres);
|
||||
SysFreeString(str);
|
||||
|
@ -2757,7 +2754,6 @@ static void run_test(const char *str, testfunc_t test)
|
|||
MSG msg;
|
||||
HRESULT hres;
|
||||
|
||||
xy_todo = FALSE;
|
||||
doc = create_document();
|
||||
if (!doc)
|
||||
return;
|
||||
|
|
|
@ -114,14 +114,16 @@ function test_handler_this() {
|
|||
ok(calls == "div2,div2*,div1,div1*,body,body*", "calls = " + calls);
|
||||
}
|
||||
|
||||
function runTests(t) {
|
||||
window.onload = function() {
|
||||
try {
|
||||
ok(cnt == 1, "cnt=" + cnt + " exception during loading?");
|
||||
ok(t === window, "t !== window");
|
||||
ok(this === window, "this !== window");
|
||||
|
||||
ok(typeof(window.onload) === "function", "typeof(window.onload) = " + typeof(window.onload));
|
||||
ok(document.body.onload === window.onload, "document.body.onload !== window.onload");
|
||||
|
||||
ok(img_onload_called, "img.onload not called before window.onload");
|
||||
|
||||
test_scriptfor();
|
||||
ondataavailable_test();
|
||||
test_handler_this();
|
||||
|
@ -132,8 +134,18 @@ function runTests(t) {
|
|||
external.reportSuccess();
|
||||
}
|
||||
</script>
|
||||
<script>
|
||||
var img = document.createElement("img");
|
||||
img.src = "http://test.winehq.org/tests/winehq_snapshot/index_files/winehq_logo_glass.png";
|
||||
|
||||
var img_onload_called = false;
|
||||
img.onload = function() {
|
||||
external.trace("img.onload");
|
||||
img_onload_called = true;
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body onload="runTests(this)">
|
||||
<body>
|
||||
<div id="divid"></div>
|
||||
<div id="divid2"></div>
|
||||
<script event="onclick" for="divid2">
|
||||
|
@ -152,5 +164,8 @@ function runTests(t) {
|
|||
cnt++;
|
||||
})();
|
||||
</script>
|
||||
<script>
|
||||
document.body.appendChild(img);
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
|
|
@ -55,7 +55,7 @@ try {
|
|||
testPutSrc();
|
||||
testPutText();
|
||||
}catch(e) {
|
||||
ok(false, "Got an exception");
|
||||
ok(false, "Got an exception " + e.message);
|
||||
}
|
||||
|
||||
function testPutSrc2() {
|
||||
|
@ -123,7 +123,7 @@ document.body.onload = function() {
|
|||
testPutSrc2();
|
||||
testPutText2();
|
||||
}catch(e) {
|
||||
ok(false, "got an exception");
|
||||
ok(false, "got an exception " + e.message);
|
||||
}
|
||||
|
||||
external.reportSuccess();
|
||||
|
|
|
@ -978,6 +978,7 @@ static HRESULT WINAPI PropertyNotifySink_OnChanged(IPropertyNotifySink *iface, D
|
|||
case 3000029:
|
||||
case 3000030:
|
||||
case 3000031:
|
||||
case 3000032:
|
||||
/* TODO */
|
||||
return S_OK;
|
||||
}
|
||||
|
@ -2855,6 +2856,7 @@ static HRESULT WINAPI OleCommandTarget_Exec(IOleCommandTarget *iface, const GUID
|
|||
test_readyState(NULL);
|
||||
return S_OK;
|
||||
case OLECMDID_UPDATETRAVELENTRY_DATARECOVERY:
|
||||
case OLECMDID_PAGEAVAILABLE:
|
||||
case 6058:
|
||||
return E_FAIL; /* FIXME */
|
||||
default:
|
||||
|
@ -2864,7 +2866,7 @@ static HRESULT WINAPI OleCommandTarget_Exec(IOleCommandTarget *iface, const GUID
|
|||
}
|
||||
|
||||
if(IsEqualGUID(&CGID_ShellDocView, pguidCmdGroup)) {
|
||||
if(nCmdID != 63 && (!is_refresh || nCmdID != 37))
|
||||
if(nCmdID != 63 && nCmdID != 178 && (!is_refresh || nCmdID != 37))
|
||||
test_readyState(NULL);
|
||||
ok(nCmdexecopt == 0, "nCmdexecopts=%08x\n", nCmdexecopt);
|
||||
|
||||
|
@ -2976,13 +2978,16 @@ static HRESULT WINAPI OleCommandTarget_Exec(IOleCommandTarget *iface, const GUID
|
|||
|
||||
case 83:
|
||||
case 102:
|
||||
case 133:
|
||||
case 134: /* TODO */
|
||||
case 135:
|
||||
case 136: /* TODO */
|
||||
case 137:
|
||||
case 139: /* TODO */
|
||||
case 143: /* TODO */
|
||||
case 144: /* TODO */
|
||||
case 178:
|
||||
case 179:
|
||||
return E_NOTIMPL;
|
||||
|
||||
default:
|
||||
|
@ -3162,7 +3167,9 @@ static HRESULT WINAPI Dispatch_Invoke(IDispatch *iface, DISPID dispIdMember, REF
|
|||
ok(puArgErr != NULL, "puArgErr == NULL\n");
|
||||
ok(V_VT(pVarResult) == 0, "V_VT(pVarResult)=%d, expected 0\n", V_VT(pVarResult));
|
||||
ok(wFlags == DISPATCH_PROPERTYGET, "wFlags=%08x, expected DISPATCH_PROPERTYGET\n", wFlags);
|
||||
test_readyState(NULL);
|
||||
|
||||
if(dispIdMember != DISPID_AMBIENT_SILENT && dispIdMember != DISPID_AMBIENT_OFFLINEIFNOTCONNECTED)
|
||||
test_readyState(NULL);
|
||||
|
||||
switch(dispIdMember) {
|
||||
case DISPID_AMBIENT_USERMODE:
|
||||
|
@ -3290,13 +3297,15 @@ static HRESULT WINAPI TravelLog_QueryInterface(ITravelLog *iface, REFIID riid, v
|
|||
{
|
||||
static const IID IID_IIETravelLog2 = {0xb67cefd2,0xe3f1,0x478a,{0x9b,0xfa,0xd8,0x93,0x70,0x37,0x5e,0x94}};
|
||||
static const IID IID_unk_travellog = {0x6afc8b7f,0xbc17,0x4a95,{0x90,0x2f,0x6f,0x5c,0xb5,0x54,0xc3,0xd8}};
|
||||
static const IID IID_unk_travellog2 = {0xf6d02767,0x9c80,0x428d,{0xb9,0x74,0x3f,0x17,0x29,0x45,0x3f,0xdb}};
|
||||
|
||||
if(IsEqualGUID(&IID_IUnknown, riid) || IsEqualGUID(&IID_ITravelLog, riid)) {
|
||||
*ppv = iface;
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
if(!IsEqualGUID(&IID_IIETravelLog2, riid) && !IsEqualGUID(&IID_unk_travellog, riid))
|
||||
if(!IsEqualGUID(&IID_IIETravelLog2, riid) && !IsEqualGUID(&IID_unk_travellog, riid)
|
||||
&& !IsEqualGUID(&IID_unk_travellog2, riid))
|
||||
ok(0, "unexpected call %s\n", wine_dbgstr_guid(riid));
|
||||
|
||||
*ppv = NULL;
|
||||
|
@ -3430,7 +3439,7 @@ static HRESULT WINAPI DocObjectService_FireBeforeNavigate2(IDocObjectService *i
|
|||
|
||||
ok(!pDispatch, "pDispatch = %p\n", pDispatch);
|
||||
ok(!strcmp_wa(lpszUrl, nav_url), "lpszUrl = %s, expected %s\n", wine_dbgstr_w(lpszUrl), nav_url);
|
||||
ok(dwFlags == 0x40 || !dwFlags || dwFlags == 0x50, "dwFlags = %x\n", dwFlags);
|
||||
ok(dwFlags == 0x140 /* IE11*/ || dwFlags == 0x40 || !dwFlags || dwFlags == 0x50, "dwFlags = %x\n", dwFlags);
|
||||
ok(!lpszFrameName, "lpszFrameName = %s\n", wine_dbgstr_w(lpszFrameName));
|
||||
if(!testing_submit) {
|
||||
ok(!pPostData, "pPostData = %p\n", pPostData);
|
||||
|
@ -5291,7 +5300,7 @@ static void test_doscroll(IUnknown *unk)
|
|||
switch(load_state) {
|
||||
case LD_DOLOAD:
|
||||
case LD_NO:
|
||||
if(!nav_url)
|
||||
if(!nav_url && !editmode)
|
||||
ok(!elem, "elem != NULL\n");
|
||||
default:
|
||||
break;
|
||||
|
@ -5453,8 +5462,29 @@ static void test_ConnectionPoint(IConnectionPointContainer *container, REFIID ri
|
|||
hres = IConnectionPoint_Advise(cp, (IUnknown*)&PropertyNotifySink, NULL);
|
||||
ok(hres == S_OK, "Advise failed: %08x\n", hres);
|
||||
} else if(IsEqualGUID(&IID_IDispatch, riid)) {
|
||||
IEnumConnections *enum_conn;
|
||||
CONNECTDATA conn_data;
|
||||
ULONG fetched;
|
||||
|
||||
hres = IConnectionPoint_Advise(cp, (IUnknown*)&EventDispatch, &cookie);
|
||||
ok(hres == S_OK, "Advise failed: %08x\n", hres);
|
||||
|
||||
hres = IConnectionPoint_EnumConnections(cp, &enum_conn);
|
||||
ok(hres == S_OK, "EnumConnections failed: %08x\n", hres);
|
||||
|
||||
fetched = 0;
|
||||
hres = IEnumConnections_Next(enum_conn, 1, &conn_data, &fetched);
|
||||
ok(hres == S_OK, "Next failed: %08x\n", hres);
|
||||
ok(conn_data.pUnk == (IUnknown*)&EventDispatch, "conn_data.pUnk == EventDispatch\n");
|
||||
ok(conn_data.dwCookie == cookie, "conn_data.dwCookie != cookie\n");
|
||||
IUnknown_Release(conn_data.pUnk);
|
||||
|
||||
fetched = 0xdeadbeef;
|
||||
hres = IEnumConnections_Next(enum_conn, 1, &conn_data, &fetched);
|
||||
ok(hres == S_FALSE, "Next failed: %08x\n", hres);
|
||||
ok(!fetched, "fetched = %d\n", fetched);
|
||||
|
||||
IEnumConnections_Release(enum_conn);
|
||||
}
|
||||
|
||||
IConnectionPoint_Release(cp);
|
||||
|
@ -5722,6 +5752,8 @@ static void test_download(DWORD flags)
|
|||
SET_EXPECT(NavigateWithBindCtx);
|
||||
SET_EXPECT(Exec_Explorer_38); /* todo_wine */
|
||||
}
|
||||
if(editmode || is_refresh)
|
||||
SET_EXPECT(Exec_ShellDocView_138);
|
||||
expect_status_text = (LPWSTR)0xdeadbeef; /* TODO */
|
||||
|
||||
while(!*b && GetMessageW(&msg, NULL, 0, 0)) {
|
||||
|
@ -5844,6 +5876,8 @@ static void test_download(DWORD flags)
|
|||
CHECK_CALLED(NavigateWithBindCtx);
|
||||
todo_wine CHECK_NOT_CALLED(Exec_Explorer_38);
|
||||
}
|
||||
if(editmode || is_refresh)
|
||||
CLEAR_CALLED(Exec_ShellDocView_138); /* IE11 */
|
||||
|
||||
if(!is_extern)
|
||||
load_state = LD_COMPLETE;
|
||||
|
@ -5949,7 +5983,7 @@ static void test_put_href(IHTMLDocument2 *doc, BOOL use_replace, const char *hre
|
|||
CHECK_CALLED(TranslateUrl);
|
||||
if(support_wbapp) {
|
||||
CHECK_CALLED(FireBeforeNavigate2);
|
||||
CHECK_CALLED(Exec_ShellDocView_67);
|
||||
CLEAR_CALLED(Exec_ShellDocView_67); /* Not called by IE11 */
|
||||
if(!is_hash) {
|
||||
CHECK_CALLED(Invoke_AMBIENT_SILENT);
|
||||
CHECK_CALLED(Invoke_AMBIENT_OFFLINEIFNOTCONNECTED);
|
||||
|
@ -6015,7 +6049,7 @@ static void test_put_href(IHTMLDocument2 *doc, BOOL use_replace, const char *hre
|
|||
ok(hres == S_OK, "SuperNavigate failed: %08x\n", hres);
|
||||
|
||||
CHECK_CALLED(TranslateUrl);
|
||||
CHECK_CALLED(Exec_ShellDocView_67);
|
||||
CLEAR_CALLED(Exec_ShellDocView_67); /* Not called by IE11 */
|
||||
CHECK_CALLED(Invoke_AMBIENT_SILENT);
|
||||
CHECK_CALLED(Invoke_AMBIENT_OFFLINEIFNOTCONNECTED);
|
||||
CHECK_CALLED(Exec_ShellDocView_63);
|
||||
|
@ -6086,8 +6120,8 @@ static void test_load_history(IHTMLDocument2 *doc)
|
|||
hres = IPersistHistory_LoadHistory(per_hist, history_stream, NULL);
|
||||
ok(hres == S_OK, "LoadHistory failed: %08x\n", hres);
|
||||
|
||||
CHECK_CALLED_BROKEN(Exec_ShellDocView_138);
|
||||
CHECK_CALLED(Exec_ShellDocView_67);
|
||||
CLEAR_CALLED(Exec_ShellDocView_138); /* Not called by IE11 */
|
||||
CLEAR_CALLED(Exec_ShellDocView_67); /* Not called by IE11 */
|
||||
CHECK_CALLED(FireBeforeNavigate2);
|
||||
CHECK_CALLED(Invoke_AMBIENT_SILENT);
|
||||
CHECK_CALLED(Invoke_AMBIENT_OFFLINEIFNOTCONNECTED);
|
||||
|
@ -7810,11 +7844,11 @@ static void test_submit(void)
|
|||
|
||||
CHECK_CALLED(TranslateUrl);
|
||||
CHECK_CALLED(FireBeforeNavigate2);
|
||||
CHECK_CALLED(Exec_ShellDocView_67);
|
||||
CLEAR_CALLED(Exec_ShellDocView_67); /* Not called by IE11 */
|
||||
CHECK_CALLED(Invoke_AMBIENT_SILENT);
|
||||
CHECK_CALLED(Invoke_AMBIENT_OFFLINEIFNOTCONNECTED);
|
||||
CHECK_CALLED(Exec_ShellDocView_63);
|
||||
todo_wine CHECK_CALLED(Exec_ShellDocView_84);
|
||||
CLEAR_CALLED(Exec_ShellDocView_84); /* Not called by IE11 */
|
||||
CHECK_CALLED(CreateInstance);
|
||||
CHECK_CALLED(Start);
|
||||
CHECK_CALLED(Protocol_Read);
|
||||
|
|
|
@ -165,6 +165,9 @@ function test_override_functions() {
|
|||
|
||||
var tmp = div.addBehavior();
|
||||
ok(tmp === "test", "div.addBehavior() = " + tmp);
|
||||
|
||||
tmp = String(div.attachEvent);
|
||||
ok(tmp == "\nfunction attachEvent() {\n [native code]\n}\n", "String(div.attachEvent) = " + tmp);
|
||||
}
|
||||
|
||||
function test_forin() {
|
||||
|
@ -245,7 +248,7 @@ function runTest() {
|
|||
try {
|
||||
runTests();
|
||||
}catch(e) {
|
||||
ok(false, "got exception");
|
||||
ok(false, "got exception " + e.message);
|
||||
}
|
||||
|
||||
external.reportSuccess();
|
||||
|
|
|
@ -18,6 +18,7 @@ function nav_back_test() {
|
|||
}
|
||||
|
||||
iframe.onload = function() {
|
||||
iframe.onload = null;
|
||||
var href = iframe.contentWindow.location.href;
|
||||
ok(/.*blank2.html/.test(href), "Unexpected href " + href);
|
||||
next_test();
|
||||
|
@ -27,8 +28,24 @@ function nav_back_test() {
|
|||
subframe.src = "blank.html";
|
||||
}
|
||||
|
||||
function window_navigate_test() {
|
||||
external.trace("Runnint window.navigate() tests...");
|
||||
|
||||
var iframe = document.getElementById("testframe");
|
||||
|
||||
iframe.onload = function() {
|
||||
iframe.onlod = null;
|
||||
var href = iframe.contentWindow.location.href;
|
||||
ok(href === "about:blank", "Unexpected href " + href);
|
||||
next_test();
|
||||
}
|
||||
|
||||
iframe.contentWindow.navigate("about:blank");
|
||||
}
|
||||
|
||||
var tests = [
|
||||
nav_back_test,
|
||||
window_navigate_test,
|
||||
function() { external.reportSuccess(); }
|
||||
];
|
||||
|
||||
|
|
|
@ -132,6 +132,8 @@ DEFINE_EXPECT(AXSetInterfaceSafetyOptions_IDispatchEx_caller_secmgr);
|
|||
DEFINE_EXPECT(AXSetInterfaceSafetyOptions_IDispatchEx_caller);
|
||||
DEFINE_EXPECT(external_success);
|
||||
DEFINE_EXPECT(QS_VariantConversion);
|
||||
DEFINE_EXPECT(QS_IActiveScriptSite);
|
||||
DEFINE_EXPECT(QS_GetCaller);
|
||||
DEFINE_EXPECT(ChangeType);
|
||||
|
||||
#define TESTSCRIPT_CLSID "{178fc163-f585-4e24-9c13-4bb7faf80746}"
|
||||
|
@ -162,6 +164,9 @@ static HRESULT ax_getopt_hres = S_OK, ax_setopt_dispex_hres = S_OK;
|
|||
static HRESULT ax_setopt_disp_caller_hres = S_OK, ax_setopt_disp_data_hres = S_OK;
|
||||
static BOOL skip_loadobject_tests;
|
||||
|
||||
static IActiveScriptSite *site;
|
||||
static SCRIPTSTATE state;
|
||||
|
||||
static int strcmp_wa(LPCWSTR strw, const char *stra)
|
||||
{
|
||||
CHAR buf[512];
|
||||
|
@ -332,6 +337,19 @@ static HRESULT WINAPI ServiceProvider_QueryService(IServiceProvider *iface, REFG
|
|||
return S_OK;
|
||||
}
|
||||
|
||||
if(IsEqualGUID(guidService, &IID_IActiveScriptSite)) {
|
||||
CHECK_EXPECT(QS_IActiveScriptSite);
|
||||
ok(IsEqualGUID(riid, &IID_IOleCommandTarget), "uenxpected riid %s\n", wine_dbgstr_guid(riid));
|
||||
return IActiveScriptSite_QueryInterface(site, riid, ppv);
|
||||
}
|
||||
|
||||
if(IsEqualGUID(guidService, &SID_GetCaller)) {
|
||||
CHECK_EXPECT(QS_GetCaller);
|
||||
ok(IsEqualGUID(riid, &IID_IServiceProvider), "uenxpected riid %s\n", wine_dbgstr_guid(riid));
|
||||
*ppv = NULL;
|
||||
return E_NOINTERFACE;
|
||||
}
|
||||
|
||||
ok(0, "unexpected service %s\n", wine_dbgstr_guid(guidService));
|
||||
return E_NOINTERFACE;
|
||||
}
|
||||
|
@ -1280,9 +1298,6 @@ static void load_doc(IHTMLDocument2 *doc, const char *str)
|
|||
IHTMLElement_Release(body);
|
||||
}
|
||||
|
||||
static IActiveScriptSite *site;
|
||||
static SCRIPTSTATE state;
|
||||
|
||||
static HRESULT WINAPI ObjectSafety_QueryInterface(IObjectSafety *iface, REFIID riid, void **ppv)
|
||||
{
|
||||
*ppv = NULL;
|
||||
|
@ -1902,6 +1917,22 @@ static void test_func(IDispatchEx *obj)
|
|||
hres = dispex_propput(obj, id, 0, &var, NULL);
|
||||
ok(hres == E_NOTIMPL, "InvokeEx failed: %08x\n", hres);
|
||||
|
||||
hres = dispex_propget(dispex, DISPID_VALUE, &var, NULL);
|
||||
ok(hres == E_ACCESSDENIED, "InvokeEx returned: %08x, expected E_ACCESSDENIED\n", hres);
|
||||
if(SUCCEEDED(hres))
|
||||
VariantClear(&var);
|
||||
|
||||
SET_EXPECT(QS_IActiveScriptSite);
|
||||
SET_EXPECT(QS_GetCaller);
|
||||
hres = dispex_propget(dispex, DISPID_VALUE, &var, &caller_sp);
|
||||
ok(hres == S_OK, "InvokeEx returned: %08x, expected S_OK\n", hres);
|
||||
ok(V_VT(&var) == VT_BSTR, "V_VT(var) = %d\n", V_VT(&var));
|
||||
ok(!strcmp_wa(V_BSTR(&var), "\nfunction toString() {\n [native code]\n}\n"),
|
||||
"V_BSTR(var) = %s\n", wine_dbgstr_w(V_BSTR(&var)));
|
||||
VariantClear(&var);
|
||||
todo_wine CHECK_CALLED(QS_IActiveScriptSite);
|
||||
todo_wine CHECK_CALLED(QS_GetCaller);
|
||||
|
||||
IDispatchEx_Release(dispex);
|
||||
}
|
||||
|
||||
|
@ -2054,12 +2085,19 @@ static void test_default_arg_conv(IHTMLWindow2 *window)
|
|||
test_elem_disabled(elem, VARIANT_TRUE);
|
||||
|
||||
V_VT(&v) = VT_I4;
|
||||
V_BSTR(&v) = 0;
|
||||
V_I4(&v) = 0;
|
||||
hres = dispex_propput(dispex, DISPID_IHTMLELEMENT3_DISABLED, 0, &v, NULL);
|
||||
ok(hres == S_OK, "InvokeEx failed: %08x\n", hres);
|
||||
|
||||
test_elem_disabled(elem, VARIANT_FALSE);
|
||||
|
||||
V_VT(&v) = VT_I4;
|
||||
V_I4(&v) = 1;
|
||||
hres = dispex_propput(dispex, DISPID_IHTMLELEMENT3_DISABLED, DISPATCH_PROPERTYPUTREF, &v, NULL);
|
||||
ok(hres == S_OK, "InvokeEx failed: %08x\n", hres);
|
||||
|
||||
test_elem_disabled(elem, VARIANT_TRUE);
|
||||
|
||||
IHTMLElement_Release(elem);
|
||||
IDispatchEx_Release(dispex);
|
||||
}
|
||||
|
|
|
@ -59,6 +59,22 @@ static BSTR a2bstr(const char *str)
|
|||
return ret;
|
||||
}
|
||||
|
||||
static const WCHAR *strstr_wa(const WCHAR *str, const char *suba)
|
||||
{
|
||||
BSTR sub;
|
||||
const WCHAR *ret = NULL;
|
||||
sub = a2bstr(suba);
|
||||
while (*str)
|
||||
{
|
||||
const WCHAR *p1 = str, *p2 = sub;
|
||||
while (*p1 && *p2 && *p1 == *p2) { p1++; p2++; }
|
||||
if (!*p2) {ret = str; break;}
|
||||
str++;
|
||||
}
|
||||
SysFreeString(sub);
|
||||
return ret;
|
||||
}
|
||||
|
||||
#define test_var_bstr(a,b) _test_var_bstr(__LINE__,a,b)
|
||||
static void _test_var_bstr(unsigned line, const VARIANT *v, const char *expect)
|
||||
{
|
||||
|
@ -421,6 +437,18 @@ static void test_style2(IHTMLStyle2 *style2)
|
|||
hres = IHTMLStyle2_get_overflowY(style2, &str);
|
||||
ok(hres == S_OK, "get_overflowY failed: %08x\n", hres);
|
||||
ok(!strcmp_wa(str, "hidden"), "overflowX = %s\n", wine_dbgstr_w(str));
|
||||
|
||||
/* tableLayout */
|
||||
str = a2bstr("fixed");
|
||||
hres = IHTMLStyle2_put_tableLayout(style2, str);
|
||||
ok(hres == S_OK, "put_tableLayout failed: %08x\n", hres);
|
||||
SysFreeString(str);
|
||||
|
||||
str = (void*)0xdeadbeef;
|
||||
hres = IHTMLStyle2_get_tableLayout(style2, &str);
|
||||
ok(hres == S_OK, "get_tableLayout failed: %08x\n", hres);
|
||||
ok(!strcmp_wa(str, "fixed"), "tableLayout = %s\n", wine_dbgstr_w(str));
|
||||
SysFreeString(str);
|
||||
}
|
||||
|
||||
static void test_style3(IHTMLStyle3 *style3)
|
||||
|
@ -471,6 +499,57 @@ static void test_style4(IHTMLStyle4 *style4)
|
|||
VariantClear(&vdefault);
|
||||
}
|
||||
|
||||
static void test_style5(IHTMLStyle5 *style5)
|
||||
{
|
||||
HRESULT hres;
|
||||
VARIANT v;
|
||||
VARIANT vdefault;
|
||||
|
||||
/* minWidth */
|
||||
hres = IHTMLStyle5_get_minWidth(style5, &vdefault);
|
||||
ok(hres == S_OK, "get_minWidth failed: %08x\n", hres);
|
||||
|
||||
V_VT(&v) = VT_BSTR;
|
||||
V_BSTR(&v) = a2bstr("12px");
|
||||
hres = IHTMLStyle5_put_minWidth(style5, v);
|
||||
ok(hres == S_OK, "put_minWidth failed: %08x\n", hres);
|
||||
VariantClear(&v);
|
||||
|
||||
hres = IHTMLStyle5_get_minWidth(style5, &v);
|
||||
ok(hres == S_OK, "get_minWidth failed: %08x\n", hres);
|
||||
ok(V_VT(&v) == VT_BSTR, "V_VT(v) = %d\n", V_VT(&v));
|
||||
ok(!strcmp_wa(V_BSTR(&v), "12px"), "expect 12px got (%s)\n", wine_dbgstr_w(V_BSTR(&v)));
|
||||
VariantClear(&v);
|
||||
|
||||
V_VT(&v) = VT_BSTR;
|
||||
V_BSTR(&v) = a2bstr("10%");
|
||||
hres = IHTMLStyle5_put_minWidth(style5, v);
|
||||
ok(hres == S_OK, "put_minWidth failed: %08x\n", hres);
|
||||
VariantClear(&v);
|
||||
|
||||
hres = IHTMLStyle5_get_minWidth(style5, &v);
|
||||
ok(hres == S_OK, "get_minWidth failed: %08x\n", hres);
|
||||
ok(V_VT(&v) == VT_BSTR, "V_VT(v) = %d\n", V_VT(&v));
|
||||
ok(!strcmp_wa(V_BSTR(&v), "10%"), "expect 10%% got (%s)\n", wine_dbgstr_w(V_BSTR(&v)));
|
||||
VariantClear(&v);
|
||||
|
||||
V_VT(&v) = VT_BSTR;
|
||||
V_BSTR(&v) = a2bstr("10");
|
||||
hres = IHTMLStyle5_put_minWidth(style5, v);
|
||||
ok(hres == S_OK, "put_minWidth failed: %08x\n", hres);
|
||||
VariantClear(&v);
|
||||
|
||||
hres = IHTMLStyle5_get_minWidth(style5, &v);
|
||||
ok(hres == S_OK, "get_minWidth failed: %08x\n", hres);
|
||||
ok(V_VT(&v) == VT_BSTR, "V_VT(v) = %d\n", V_VT(&v));
|
||||
ok(!strcmp_wa(V_BSTR(&v), "10px"), "expect 10px got (%s)\n", wine_dbgstr_w(V_BSTR(&v)));
|
||||
VariantClear(&v);
|
||||
|
||||
hres = IHTMLStyle5_put_minWidth(style5, vdefault);
|
||||
ok(hres == S_OK, "put_minWidth failed: %08x\n", hres);
|
||||
VariantClear(&vdefault);
|
||||
}
|
||||
|
||||
static void test_style6(IHTMLStyle6 *style)
|
||||
{
|
||||
BSTR str;
|
||||
|
@ -516,6 +595,7 @@ static void test_body_style(IHTMLStyle *style)
|
|||
IHTMLStyle2 *style2;
|
||||
IHTMLStyle3 *style3;
|
||||
IHTMLStyle4 *style4;
|
||||
IHTMLStyle5 *style5;
|
||||
IHTMLStyle6 *style6;
|
||||
VARIANT_BOOL b;
|
||||
VARIANT v;
|
||||
|
@ -742,6 +822,28 @@ static void test_body_style(IHTMLStyle *style)
|
|||
todo_wine
|
||||
ok(!strcmp_wa(V_BSTR(&v), "#00fdfd"), "V_BSTR(color) = %s\n", wine_dbgstr_w(V_BSTR(&v)));
|
||||
|
||||
V_VT(&v) = VT_I4;
|
||||
V_I4(&v) = 3;
|
||||
hres = IHTMLStyle_put_lineHeight(style, v);
|
||||
ok(hres == S_OK, "put_lineHeight failed: %08x\n", hres);
|
||||
|
||||
hres = IHTMLStyle_get_lineHeight(style, &v);
|
||||
ok(hres == S_OK, "get_lineHeight failed: %08x\n", hres);
|
||||
ok(V_VT(&v) == VT_BSTR, "V_VT(lineHeight) = %d, expect VT_BSTR\n", V_VT(&v));
|
||||
ok(!strcmp_wa(V_BSTR(&v), "3"), "V_BSTR(lineHeight) = %s\n", wine_dbgstr_w(V_BSTR(&v)));
|
||||
|
||||
V_VT(&v) = VT_BSTR;
|
||||
V_BSTR(&v) = a2bstr("300%");
|
||||
hres = IHTMLStyle_put_lineHeight(style, v);
|
||||
ok(hres == S_OK, "put_lineHeight failed: %08x\n", hres);
|
||||
VariantClear(&v);
|
||||
|
||||
hres = IHTMLStyle_get_lineHeight(style, &v);
|
||||
ok(hres == S_OK, "get_lineHeight failed: %08x\n", hres);
|
||||
ok(V_VT(&v) == VT_BSTR, "V_VT(lineHeight) = %d, expect VT_BSTR\n", V_VT(&v));
|
||||
ok(!strcmp_wa(V_BSTR(&v), "300%"), "V_BSTR(lineHeight) = %s\n", wine_dbgstr_w(V_BSTR(&v)));
|
||||
VariantClear(&v);
|
||||
|
||||
b = 0xfefe;
|
||||
hres = IHTMLStyle_get_textDecorationUnderline(style, &b);
|
||||
ok(hres == S_OK, "get_textDecorationUnderline failed: %08x\n", hres);
|
||||
|
@ -861,6 +963,11 @@ static void test_body_style(IHTMLStyle *style)
|
|||
f == 2.2f, /* IE8 */
|
||||
"f = %f\n", f);
|
||||
|
||||
l = 0xdeadbeef;
|
||||
hres = IHTMLStyle_get_pixelWidth(style, &l);
|
||||
ok(hres == S_OK, "get_pixelWidth failed: %08x\n", hres);
|
||||
ok(l == 2, "pixelWidth = %d\n", l);
|
||||
|
||||
V_VT(&v) = VT_BSTR;
|
||||
V_BSTR(&v) = a2bstr("auto");
|
||||
hres = IHTMLStyle_put_width(style, v);
|
||||
|
@ -879,6 +986,11 @@ static void test_body_style(IHTMLStyle *style)
|
|||
hres = IHTMLStyle_put_width(style, v);
|
||||
ok(hres == S_OK, "put_width failed: %08x\n", hres);
|
||||
|
||||
l = 0xdeadbeef;
|
||||
hres = IHTMLStyle_get_pixelWidth(style, &l);
|
||||
ok(hres == S_OK, "get_pixelWidth failed: %08x\n", hres);
|
||||
ok(l == 100, "pixelWidth = %d\n", l);
|
||||
|
||||
V_VT(&v) = VT_EMPTY;
|
||||
hres = IHTMLStyle_get_width(style, &v);
|
||||
ok(hres == S_OK, "get_width failed: %08x\n", hres);
|
||||
|
@ -889,6 +1001,14 @@ static void test_body_style(IHTMLStyle *style)
|
|||
hres = IHTMLStyle_put_pixelWidth(style, 50);
|
||||
ok(hres == S_OK, "put_pixelWidth failed: %08x\n", hres);
|
||||
|
||||
l = 0xdeadbeef;
|
||||
hres = IHTMLStyle_get_pixelWidth(style, &l);
|
||||
ok(hres == S_OK, "get_pixelWidth failed: %08x\n", hres);
|
||||
ok(l == 50, "pixelWidth = %d\n", l);
|
||||
|
||||
hres = IHTMLStyle_get_pixelWidth(style, NULL);
|
||||
ok(hres == E_POINTER, "get_pixelWidth failed: %08x\n", hres);
|
||||
|
||||
V_VT(&v) = VT_EMPTY;
|
||||
hres = IHTMLStyle_get_width(style, &v);
|
||||
ok(hres == S_OK, "get_width failed: %08x\n", hres);
|
||||
|
@ -1062,6 +1182,9 @@ static void test_body_style(IHTMLStyle *style)
|
|||
ok(hres == S_OK, "get_pixelLeft failed: %08x\n", hres);
|
||||
ok(l == 6, "pixelLeft = %d\n", l);
|
||||
|
||||
hres = IHTMLStyle_get_pixelLeft(style, NULL);
|
||||
ok(hres == E_POINTER, "get_pixelLeft failed: %08x\n", hres);
|
||||
|
||||
V_VT(&v) = VT_EMPTY;
|
||||
hres = IHTMLStyle_get_left(style, &v);
|
||||
ok(hres == S_OK, "get_left failed: %08x\n", hres);
|
||||
|
@ -1087,6 +1210,17 @@ static void test_body_style(IHTMLStyle *style)
|
|||
f == 4.9f, /* IE8 */
|
||||
"expected 4.0 or 4.9 (IE8) got %f\n", f);
|
||||
|
||||
hres = IHTMLStyle_put_pixelTop(style, 6);
|
||||
ok(hres == S_OK, "put_pixelTop failed: %08x\n", hres);
|
||||
|
||||
l = 0xdeadbeef;
|
||||
hres = IHTMLStyle_get_pixelTop(style, &l);
|
||||
ok(hres == S_OK, "get_pixelTop failed: %08x\n", hres);
|
||||
ok(l == 6, "pixelTop = %d\n", l);
|
||||
|
||||
hres = IHTMLStyle_get_pixelTop(style, NULL);
|
||||
ok(hres == E_POINTER, "get_pixelTop failed: %08x\n", hres);
|
||||
|
||||
V_VT(&v) = VT_BSTR;
|
||||
V_BSTR(&v) = a2bstr("3px");
|
||||
hres = IHTMLStyle_put_top(style, v);
|
||||
|
@ -1104,6 +1238,11 @@ static void test_body_style(IHTMLStyle *style)
|
|||
ok(hres == S_OK, "get_posTop failed: %08x\n", hres);
|
||||
ok(f == 3.0, "expected 3.0 got %f\n", f);
|
||||
|
||||
l = 0xdeadbeef;
|
||||
hres = IHTMLStyle_get_pixelTop(style, &l);
|
||||
ok(hres == S_OK, "get_pixelTop failed: %08x\n", hres);
|
||||
ok(l == 3, "pixelTop = %d\n", l);
|
||||
|
||||
V_VT(&v) = VT_NULL;
|
||||
hres = IHTMLStyle_put_top(style, v);
|
||||
ok(hres == S_OK, "put_top failed: %08x\n", hres);
|
||||
|
@ -1115,6 +1254,11 @@ static void test_body_style(IHTMLStyle *style)
|
|||
ok(!V_BSTR(&v), "V_BSTR(v) != NULL\n");
|
||||
VariantClear(&v);
|
||||
|
||||
l = 0xdeadbeef;
|
||||
hres = IHTMLStyle_get_pixelTop(style, &l);
|
||||
ok(hres == S_OK, "get_pixelTop failed: %08x\n", hres);
|
||||
ok(!l, "pixelTop = %d\n", l);
|
||||
|
||||
/* Test posHeight */
|
||||
hres = IHTMLStyle_get_posHeight(style, NULL);
|
||||
ok(hres == E_POINTER, "get_posHeight failed: %08x\n", hres);
|
||||
|
@ -1131,6 +1275,11 @@ static void test_body_style(IHTMLStyle *style)
|
|||
ok(hres == S_OK, "get_posHeight failed: %08x\n", hres);
|
||||
ok(f == 0.0, "expected 0.0 got %f\n", f);
|
||||
|
||||
l = 0xdeadbeef;
|
||||
hres = IHTMLStyle_get_pixelHeight(style, &l);
|
||||
ok(hres == S_OK, "get_pixelHeight failed: %08x\n", hres);
|
||||
ok(!l, "pixelHeight = %d\n", l);
|
||||
|
||||
hres = IHTMLStyle_put_posHeight(style, 4.9f);
|
||||
ok(hres == S_OK, "put_posHeight failed: %08x\n", hres);
|
||||
|
||||
|
@ -1140,6 +1289,13 @@ static void test_body_style(IHTMLStyle *style)
|
|||
f == 4.9f, /* IE8 */
|
||||
"expected 4.0 or 4.9 (IE8) got %f\n", f);
|
||||
|
||||
l = 0xdeadbeef;
|
||||
hres = IHTMLStyle_get_pixelHeight(style, &l);
|
||||
ok(hres == S_OK, "get_pixelHeight failed: %08x\n", hres);
|
||||
ok(l == 4 ||
|
||||
l == 5, /* IE8 */
|
||||
"pixelHeight = %d\n", l);
|
||||
|
||||
V_VT(&v) = VT_BSTR;
|
||||
V_BSTR(&v) = a2bstr("70px");
|
||||
hres = IHTMLStyle_put_height(style, v);
|
||||
|
@ -1153,6 +1309,11 @@ static void test_body_style(IHTMLStyle *style)
|
|||
ok(!strcmp_wa(V_BSTR(&v), "70px"), "V_BSTR(v) = %s\n", wine_dbgstr_w(V_BSTR(&v)));
|
||||
VariantClear(&v);
|
||||
|
||||
l = 0xdeadbeef;
|
||||
hres = IHTMLStyle_get_pixelHeight(style, &l);
|
||||
ok(hres == S_OK, "get_pixelHeight failed: %08x\n", hres);
|
||||
ok(l == 70, "pixelHeight = %d\n", l);
|
||||
|
||||
V_VT(&v) = VT_BSTR;
|
||||
V_BSTR(&v) = NULL;
|
||||
hres = IHTMLStyle_put_height(style, v);
|
||||
|
@ -1166,6 +1327,22 @@ static void test_body_style(IHTMLStyle *style)
|
|||
ok(!V_BSTR(&v), "V_BSTR(v) = %s, expected NULL\n", wine_dbgstr_w(V_BSTR(&v)));
|
||||
VariantClear(&v);
|
||||
|
||||
l = 0xdeadbeef;
|
||||
hres = IHTMLStyle_get_pixelHeight(style, &l);
|
||||
ok(hres == S_OK, "get_pixelHeight failed: %08x\n", hres);
|
||||
ok(!l, "pixelHeight = %d\n", l);
|
||||
|
||||
hres = IHTMLStyle_put_pixelHeight(style, 50);
|
||||
ok(hres == S_OK, "put_pixelHeight failed: %08x\n", hres);
|
||||
|
||||
l = 0xdeadbeef;
|
||||
hres = IHTMLStyle_get_pixelHeight(style, &l);
|
||||
ok(hres == S_OK, "get_pixelHeight failed: %08x\n", hres);
|
||||
ok(l == 50, "pixelHeight = %d\n", l);
|
||||
|
||||
hres = IHTMLStyle_get_pixelHeight(style, NULL);
|
||||
ok(hres == E_POINTER, "get_pixelHeight failed: %08x\n", hres);
|
||||
|
||||
V_VT(&v) = VT_I4;
|
||||
V_I4(&v) = 64;
|
||||
hres = IHTMLStyle_put_height(style, v);
|
||||
|
@ -1182,6 +1359,11 @@ static void test_body_style(IHTMLStyle *style)
|
|||
ok(hres == S_OK, "get_posHeight failed: %08x\n", hres);
|
||||
ok(f == 64.0, "expected 64.0 got %f\n", f);
|
||||
|
||||
l = 0xdeadbeef;
|
||||
hres = IHTMLStyle_get_pixelHeight(style, &l);
|
||||
ok(hres == S_OK, "get_pixelHeight failed: %08x\n", hres);
|
||||
ok(l == 64, "pixelHeight = %d\n", l);
|
||||
|
||||
str = (void*)0xdeadbeef;
|
||||
hres = IHTMLStyle_get_cursor(style, &str);
|
||||
ok(hres == S_OK, "get_cursor failed: %08x\n", hres);
|
||||
|
@ -1248,6 +1430,39 @@ static void test_body_style(IHTMLStyle *style)
|
|||
ok(!strcmp_wa(str, "center"), "textAlign = %s\n", wine_dbgstr_w(V_BSTR(&v)));
|
||||
SysFreeString(str);
|
||||
|
||||
V_VT(&v) = VT_NULL;
|
||||
hres = IHTMLStyle_get_textIndent(style, &v);
|
||||
ok(hres == S_OK, "get_textIndent failed: %08x\n", hres);
|
||||
ok(V_VT(&v) == VT_BSTR, "V_VT(textIndent) = %d\n", V_VT(&v));
|
||||
ok(!V_BSTR(&v), "V_BSTR(textIndent) = %s\n", wine_dbgstr_w(V_BSTR(&v)));
|
||||
|
||||
V_VT(&v) = VT_I4;
|
||||
V_I4(&v) = 6;
|
||||
hres = IHTMLStyle_put_textIndent(style, v);
|
||||
ok(hres == S_OK, "put_textIndent failed: %08x\n", hres);
|
||||
|
||||
V_VT(&v) = VT_NULL;
|
||||
hres = IHTMLStyle_get_textIndent(style, &v);
|
||||
ok(hres == S_OK, "get_textIndent failed: %08x\n", hres);
|
||||
ok(V_VT(&v) == VT_BSTR, "V_VT(textIndent) = %d\n", V_VT(&v));
|
||||
ok(!strcmp_wa(V_BSTR(&v), "6px"), "V_BSTR(textIndent) = %s\n", wine_dbgstr_w(V_BSTR(&v)));
|
||||
|
||||
str = (void*)0xdeadbeef;
|
||||
hres = IHTMLStyle_get_textTransform(style, &str);
|
||||
ok(hres == S_OK, "get_textTransform failed: %08x\n", hres);
|
||||
ok(!str, "textTransform != NULL\n");
|
||||
|
||||
str = a2bstr("lowercase");
|
||||
hres = IHTMLStyle_put_textTransform(style, str);
|
||||
ok(hres == S_OK, "put_textTransform failed: %08x\n", hres);
|
||||
SysFreeString(str);
|
||||
|
||||
str = NULL;
|
||||
hres = IHTMLStyle_get_textTransform(style, &str);
|
||||
ok(hres == S_OK, "get_textTransform failed: %08x\n", hres);
|
||||
ok(!strcmp_wa(str, "lowercase"), "textTransform = %s\n", wine_dbgstr_w(V_BSTR(&v)));
|
||||
SysFreeString(str);
|
||||
|
||||
str = (void*)0xdeadbeef;
|
||||
hres = IHTMLStyle_get_filter(style, &str);
|
||||
ok(hres == S_OK, "get_filter failed: %08x\n", hres);
|
||||
|
@ -1478,6 +1693,16 @@ static void test_body_style(IHTMLStyle *style)
|
|||
ok(!strcmp_wa(V_BSTR(&v), "red"), "str=%s\n", wine_dbgstr_w(V_BSTR(&v)));
|
||||
VariantClear(&v);
|
||||
|
||||
str = a2bstr("fixed");
|
||||
hres = IHTMLStyle_put_backgroundAttachment(style, str);
|
||||
ok(hres == S_OK, "put_backgroundAttachment failed: %08x\n", hres);
|
||||
SysFreeString(str);
|
||||
|
||||
hres = IHTMLStyle_get_backgroundAttachment(style, &str);
|
||||
ok(hres == S_OK, "get_backgroundAttachment failed: %08x\n", hres);
|
||||
ok(!strcmp_wa(str, "fixed"), "ret = %s\n", wine_dbgstr_w(str));
|
||||
SysFreeString(str);
|
||||
|
||||
/* padding */
|
||||
hres = IHTMLStyle_get_padding(style, &str);
|
||||
ok(hres == S_OK, "get_padding failed: %08x\n", hres);
|
||||
|
@ -2106,8 +2331,35 @@ static void test_body_style(IHTMLStyle *style)
|
|||
hres = IHTMLStyle_get_listStyleType(style, &str);
|
||||
ok(hres == S_OK, "get_listStyleType failed: %08x\n", hres);
|
||||
ok(!strcmp_wa(str, "square"), "listStyleType = %s\n", wine_dbgstr_w(str));
|
||||
|
||||
str = a2bstr("inside");
|
||||
hres = IHTMLStyle_put_listStylePosition(style, str);
|
||||
ok(hres == S_OK, "put_listStylePosition failed: %08x\n", hres);
|
||||
SysFreeString(str);
|
||||
|
||||
hres = IHTMLStyle_get_listStylePosition(style, &str);
|
||||
ok(hres == S_OK, "get_listStylePosition failed: %08x\n", hres);
|
||||
ok(!strcmp_wa(str, "inside"), "listStyleType = %s\n", wine_dbgstr_w(str));
|
||||
SysFreeString(str);
|
||||
|
||||
str = a2bstr("decimal-leading-zero none inside");
|
||||
hres = IHTMLStyle_put_listStyle(style, str);
|
||||
ok(hres == S_OK || broken(hres == E_INVALIDARG), /* win 2000 */
|
||||
"put_listStyle(%s) failed: %08x\n", wine_dbgstr_w(str), hres);
|
||||
SysFreeString(str);
|
||||
|
||||
if (hres != E_INVALIDARG) {
|
||||
hres = IHTMLStyle_get_listStyle(style, &str);
|
||||
ok(hres == S_OK, "get_listStyle failed: %08x\n", hres);
|
||||
ok(strstr_wa(str, "decimal-leading-zero") &&
|
||||
strstr_wa(str, "none") != NULL &&
|
||||
strstr_wa(str, "inside") != NULL,
|
||||
"listStyle = %s\n", wine_dbgstr_w(str));
|
||||
SysFreeString(str);
|
||||
} else {
|
||||
win_skip("IHTMLStyle_put_listStyle already failed\n");
|
||||
}
|
||||
|
||||
hres = IHTMLStyle_QueryInterface(style, &IID_IHTMLStyle2, (void**)&style2);
|
||||
ok(hres == S_OK, "Could not get IHTMLStyle2 iface: %08x\n", hres);
|
||||
if(SUCCEEDED(hres)) {
|
||||
|
@ -2129,6 +2381,14 @@ static void test_body_style(IHTMLStyle *style)
|
|||
IHTMLStyle4_Release(style4);
|
||||
}
|
||||
|
||||
hres = IHTMLStyle_QueryInterface(style, &IID_IHTMLStyle5, (void**)&style5);
|
||||
if(SUCCEEDED(hres)) {
|
||||
test_style5(style5);
|
||||
IHTMLStyle5_Release(style5);
|
||||
}else {
|
||||
win_skip("IHTMLStyle5 not available\n");
|
||||
}
|
||||
|
||||
hres = IHTMLStyle_QueryInterface(style, &IID_IHTMLStyle6, (void**)&style6);
|
||||
if(SUCCEEDED(hres)) {
|
||||
test_style6(style6);
|
||||
|
@ -2490,6 +2750,10 @@ static void test_current_style(IHTMLCurrentStyle *current_style)
|
|||
ok(V_VT(&v) == VT_BSTR, "V_VT(v) = %d\n", V_VT(&v));
|
||||
VariantClear(&v);
|
||||
|
||||
hres = IHTMLCurrentStyle_get_textTransform(current_style, &str);
|
||||
ok(hres == S_OK, "get_textTransform failed: %08x\n", hres);
|
||||
SysFreeString(str);
|
||||
|
||||
current_style2 = get_current_style2_iface((IUnknown*)current_style);
|
||||
|
||||
b = 100;
|
||||
|
|
|
@ -24,7 +24,7 @@ try {
|
|||
counter++;
|
||||
incCounter(2);
|
||||
}catch(e) {
|
||||
ok(false, "got an exception");
|
||||
ok(false, "got an exception " + e.message);
|
||||
}
|
||||
</script>
|
||||
<script>
|
||||
|
|
Loading…
Reference in a new issue