Commit graph

94 commits

Author SHA1 Message Date
Doug Lyons 1b3eed58ca
[SHELL32] Fix for shlexec.cpp regressions (#5282)
fixes CORE-18967 'Taskbar toolbar - Right click > Open folder fails'
by restoring the code-path we removed with the guilty 
0.4.15-dev-3847-g /9b716539182864bc077e362febcda74da50287ed 

and add test_sei_lpIDList to shell32:ShellExecuteEx apitest test to protect
that functionality on future attempts to simplify.
2023-09-24 20:35:28 +00:00
Katayama Hirofumi MZ 6c55a3aa2a
[SHELL32][SHELL32_APITEST][SDK] Implement Int64ToString (#5706)
- Implement Int64ToString and LargeIntegerToString functions.
- Add Int64ToString and LargeIntegerToString prototypes to <shellundoc.h>.
- Add Int64ToString testcase.
- I found a bug in GetNumberFormat.LeadingZero.

http://undoc.airesoft.co.uk/shell32.dll/Int64ToString.php
http://undoc.airesoft.co.uk/shell32.dll/LargeIntegerToString.php
2023-09-21 09:14:40 +09:00
Katayama Hirofumi MZ a2d8e464c8
[SHLWAPI][SDK][SHELL32_APITEST][SHLWAPI_WINETEST] Property Bag on Desktop Upgrade (#5590)
- Add CDesktopUpgradePropertyBag class.
- Implement SHGetDesktopUpgradePropertyBag
  function.
CORE-9283
2023-08-22 12:01:20 +09:00
Katayama Hirofumi MZ 358e45d33a
[SHELL32][SHELL32_APITEST][SDK] Implement SheRemoveQuotesA/W (#5517)
- Implement SheRemoveQuotesA and SheRemoveQuotesW functions.
- Add She testcase into shell32_apitest.
- Add SheRemoveQuotesA/W into <undocshell.h>.
CORE-9277
2023-08-05 19:44:13 +09:00
Doug Lyons 21e30f3f67
[SHELL32_APITEST] Add test for Control Panel's GetDisplayNameOf (#5495)
New regression test for shell32!GetDisplayNameOf, showing that the return
value of the function will be 'S_FALSE' when the first argument is NULL.
Also, the returned STRRET structure data is not modified by this call.

CORE-18841
2023-08-04 16:54:31 +03:00
Timo Kreuzer 53d481993d [SHELL32_APITEST] Disable CUserNotification test
The test doesn't work on Windows 2003, because the balloon window does not close itself.
2023-04-17 00:41:31 +03:00
Doug Lyons c8fc8264fe
[SHELL32_APITESTS] Add ROS.ico test file. Improve shell32:ExtractIconEx tests (#5169)
Improve shell32:ExtractIconEx tests by updating it and adding more test files and 1 new icon file.

JIRA issue: ROSTESTS-381

Add new ROS.ico file which has both a normal icon and a PNG one.
Update testing to test for count of icons in file and separately extract the 0th one.
Add tests for sysicon.ico, explorer.exe and the new ROS.ico files.
2023-03-30 13:31:13 +02:00
Katayama Hirofumi MZ 324cda0835
[SHELL32][SHELL32_APITEST] Improve CommandLineToArgvW (#5055)
This PR will reduce the failures of CommandLineToArgvW testcase of shell32_apitest.
- Use isspace and isblank in shell32!CommandLineToArgvW.
- Strengthen shell32_apitest:CommandLineToArgvW testcase.
CORE-17787
2023-02-14 20:53:48 +09:00
Katayama Hirofumi MZ b6aaf5e332
[SHELL32_APITEST] Add CommandLineToArgvW testcase (#5013)
CORE-17787
2023-02-02 10:09:00 +09:00
Katayama Hirofumi MZ 2c4cb40d8e [SHELL32_APITEST] Workaround on wine_dbgstr_w bugs
Double wine_dbgstr_w calls makes output broken.
I used two buffers and kept the results of wine_dbgstr_w to do workaround.

CORE-18080
2022-11-04 19:58:10 +09:00
Katayama Hirofumi MZ 02d92979d9 [SHELL32_APITEST] Add dots tests to PathResolve testcase
CORE-18080
2022-11-04 11:37:01 +09:00
Katayama Hirofumi MZ a17664cec2 [SHELL32_APITEST] Consider more tests in PathResolve testcase
Consider:
- Double-backslash.
- Name with trailing backslash.
- Directory with trailing backslash.
- Non full path.
CORE-18080
2022-11-01 11:19:55 +09:00
Katayama Hirofumi MZ 346d12bcd9 [SHELL_APITEST] Add double-backslash tests for PathResolve testcase
- Add s_LinkTargetDoubleBackslash variable.
- Add double-backslash tests.
- Add curly brackets for for-loop.
CORE-18080
2022-11-01 10:11:20 +09:00
Katayama Hirofumi MZ 6fe0a082ec [SHELL32_APITEST] Follow-up of 83e690c
Forgotten the section numbers.
CORE-18080
2022-11-01 09:05:24 +09:00
Katayama Hirofumi MZ 83e690cd92 [SHELL32_APITEST] Improve PathResolve testcase
- Use line numbers instead of entry numbers.
- Add LFN check.
- Delete some test entries outside of test data directory.
- Add some test entries.
CORE-18080
2022-11-01 08:55:42 +09:00
Hermès Bélusca-Maïto 4bf32102ab
[SHELL32_APITEST] ShellExecCmdLine: Do **NOT** use TerminateProcess to close the opened windows.
This design, introduced in 418edcd2b, is fundamentally flawed as it
can also close windows unrelated to the running test (e.g. windows
of programs that the user can start, while the test is running).

But since we cannot do much better, mitigate instead the other main
problem of this design: Just use PostMessageW(WM_CLOSE), as it used
to be, instead of TerminateProcess().

Indeed, using TerminateProcess() otherwise could kill unrelated
processes the test hasn't created. In particular it could kill the
csrss.exe system process if, during the testing procedure, a hard-error
popup shows up.
And this is precisely the case when this test runs with limited memory,
and a hard-error
  "Insufficient system resources exist to complete the requested service."
arises.
2022-05-06 21:32:08 +02:00
Hermès Bélusca-Maïto 307ce1a503
[SHELL32_APITEST] ShellExecuteEx: Introduce a CleanupNewlyCreatedWindows() helper similar to the one of the ShellExecCmdLine test. 2022-05-06 21:32:01 +02:00
Serge Gautherie 03422451b3 [REACTOS] Add '\n' to debug logs
on TRACE, WARN, FIXME and ERR calls.

Plus a few nit picks.
2022-05-04 03:28:38 +03:00
Katayama Hirofumi MZ 418edcd2bf [SHELL32_APITEST] ShellExecCmdLine: Close newly-opened windows
ROSTESTS-378
2022-02-15 20:15:36 +09:00
Katayama Hirofumi MZ 60b89da383 [SHELL32_APITEST] Try to fix Test Win2003_x64 again 2022-02-13 17:45:08 +09:00
Katayama Hirofumi MZ 3ed22ed326 [SHELL32_APITEST] Try to fix Test Win2003_x64
rm: cannot remove 'C:\\tests/testdata/shell32_apitest_sub.exe': Permission denied
2022-02-09 12:37:06 +09:00
Mark Jansen f80de47c85 [SHELL32_APITEST] ShellExecuteEx: Add test for 'properties' verb
CORE-18035
2022-02-03 21:50:34 +01:00
Mark Jansen d59f5ae2a5 [SHELL32][SHELL32_APITEST] Implement SHCreateFileDataObject 2021-12-31 21:27:30 +01:00
Katayama Hirofumi MZ 691139c090 [SHELL32_APITEST] Disable SHChangeNotify testcase by DISABLE_THIS_TESTCASE macro
SHChangeNotify testcase takes 6min. Too heavy.
CORE-13950
2021-12-27 09:58:35 +09:00
Katayama Hirofumi MZ 7e9cf35967
[SHELL32_APITEST] Strengthen SHChangeNotify testcase more and more (#4174)
CORE-13950
2021-12-27 09:45:44 +09:00
Hermès Bélusca-Maïto 957e566a23
[APITESTS][NTVDM][SPOOLSV] Add the missing ENABLE_EXPORTS property as these EXE targets have function exports.
This became a requirement, following a previous CMake update.
Otherwise the built EXEs would not export their intended functions.

Addendum to commit d8e92b5a (see PR #1335)
CORE-15406

[LOADCONFIG] The GCC rant had nothing to do with GCC, but everything with CMake...

[SPOOLSV] Add the missing exported stubs.
2021-12-04 01:17:32 +01:00
Mark Jansen e5ea6041c9
[SHELL32][SHELL32_APITEST] Add SHGetAttributesFromDataObject 2021-11-15 20:02:13 +01:00
Katayama Hirofumi MZ 067ca884bc
[SHELL32_APITEST] Strengthen ShellHook testcase for fullscreen (#4051)
- Add tests for HSHELL_RUDEAPPACTIVATED.
CORE-16130
2021-10-24 09:19:23 +09:00
Hermès Bélusca-Maïto 9393fc320e
[FORMATTING] Remove trailing whitespace. Addendum to 34593d93.
Excluded: 3rd-party code (incl. wine) and most of the win32ss.
2021-09-13 03:52:22 +02:00
Katayama Hirofumi MZ afd349a93e
[SHELL32_APITEST] Improve ShellExecCmdLine testcase more (#3736)
- Simplify code.
- Loose the condition of success.
- Add some missing tests.
- Close newly opened windows gracefully.
CORE-17351, CORE-16898, CORE-17612
2021-06-11 08:09:18 +09:00
Katayama Hirofumi MZ c35a84985a
[SHELL32_APITEST] Strengthen ShellExecuteEx testcase (#3731)
Investigate shell32!ShellExecuteEx function more. CORE-17351, CORE-16898, CORE-17612
2021-06-08 08:07:37 +09:00
Joachim Henze d30a1673d4 [SHELL32_APITEST] ShellHook testcase Fix compiler error (addendum to #3289)
addendum to 0.4.15-dev-1123-g 0089291751

Fix a compiler error on RosBE2.1.6 GCC4.7.2
that I got when I merged this test back to 0.4.14RC:

C:/0414rls/reactos/modules/rostests/apitests/shell32/ShellHook.cpp: In function
'LRESULT WindowProc(HWND, UINT, WPARAM, LPARAM)':
C:/0414rls/reactos/modules/rostests/apitests/shell32/ShellHook.cpp:339:26: error
: comparison between signed and unsigned integer expressions [-Werror=sign-compa
re]
cc1plus.exe: all warnings being treated as errors
ninja: build stopped: subcommand failed.
2021-06-06 16:40:28 +02:00
Katayama Hirofumi MZ 9eb566e707 [SHELL32_APITEST] Follow-up of #3723
Strengthen FindExecutable testcase. CORE-17351, CORE-16898, CORE-17612
2021-06-06 08:25:27 +09:00
Katayama Hirofumi MZ fccea84dd4
[SHELL32_APITEST] Add FindExecutable testcase (#3723)
Investigate the implementation of shell32!FindExecutable function.
CORE-17351, CORE-16898, CORE-17612
2021-06-06 06:51:42 +09:00
Katayama Hirofumi MZ 55345930ad [SHELL32_APITEST] ShellExecCmdLine: Don't copy Notepad.exe
On Windows 10, when I copyed Notepad.exe to the desktop and double-clicked it, it won't start Notepad. This is probably because there is a security protection mechanism (or some mechanism) at work. Tests that assume this mechanism will not work properly on ReactOS. Thus, I had to delete some tests. CORE-17351
2021-06-04 06:16:07 +09:00
Katayama Hirofumi MZ f37b94ba39 [SHELL32_APITEST] ShellExecCmdLine: Close Notepad windows
By using newly added CloseNotepads function, close the Notepad window.
CORE-17351
2021-06-03 14:49:49 +09:00
Katayama Hirofumi MZ d21adc9b31
[SHELL32_APITEST] Strengthen and improve ShellHook testcase (#3687)
- Add tests to find the missing parameters against HSHELL_WINDOWCREATED conditions.
- Improve code readability. CORE-15669
2021-05-29 09:33:46 +09:00
George Bișoc b00ecdcab9
Replace my E-mail with the ReactOS org one (#3475)
From now on for ReactOS related contributions only the organization e-mail shall be used and also reverse the order of my real full name.
2021-02-22 18:26:55 +03:00
Jérôme Gardou 907025a018 [CMAKE] Introduce the atl_classes interface library
This takes care of adding the relvant include directory and the _ATL_NO_EXCEPTIONS define, if needed
2020-10-20 21:44:54 +02:00
Jérôme Gardou d6ea8659c8 [CMAKE] Get rid of the set_cpp macro
Instead of messing with global variables and the like, we introduce two target properties:
 - WITH_CXX_EXCEPTIONS: if you want to use C++ exceptions
 - WITH_CXX_RTTI: if you need RTTI in your module
You can use the newly introduced set_target_cpp_properties function, with WITH_EXCEPTIONS and WITH_RTTI arguments
We also introduce two libraries :
 - cpprt: for C++ runtime routines
 - cppstl: for the C++ standard template library

NB: On GCC, this requires to create imported libraries with the related built-in libraries:libsupc++, limingwex, libstdc++

Finally, we manage the relevant flags with the ad-hoc generator expressions

So, if you don't need exceptions, nor RTTI, nor use any runtime at all: you simply have nothing else to do than add your C++ file to your module
2020-10-20 21:44:54 +02:00
Katayama Hirofumi MZ 0089291751
[SHELL32_APITEST] Add ShellHook testcase (#3289)
Add a testcase named ShellHook for shell hook. This testcase will test HSHELL_WINDOWCREATED especially. HSHELL_WINDOWCREATED affects display of task bar panes. CORE-17330
2020-10-12 09:52:21 +09:00
Katayama Hirofumi MZ 78edea8164
[SHELL32_APITEST] Strengthen ShellExecCmdLine testcase (#3164)
- Add tests for "My Documents" and "Control Panel".
- Add some comments for usability.
CORE-16939
2020-09-14 13:25:45 +09:00
Katayama Hirofumi MZ de9c32bfed
[SHELL32_APITEST] Strengthen ShellExecuteW testcase (#3165)
Add tests for special folders. CORE-16939
2020-09-13 00:47:56 +09:00
Katayama Hirofumi MZ 3aa9cae13e
[SHELL32_APITEST] Strengthen SHAppBarMessage testcase for workarea (#3041)
CORE-7237 - Add workarea checks.
2020-08-13 20:59:36 +09:00
Katayama Hirofumi MZ 90aff8dd09
[SHELL32_APITEST] Strengthen SHChangeNotify testcase more (#3038)
- Add tests on SHCNRF_InterruptLevel and SHCNRF_RecursiveInterrupt.
- Don't use clipboard for data exchange.
- Close Explorer Cabinets before tests.
CORE-13950
2020-08-13 07:51:45 +09:00
Katayama Hirofumi MZ 1d8c567996 [SHELL32_APITEST] Improve DoAction8 of SHChangeNotify testcase
CORE-13950
2020-08-09 11:07:55 +09:00
Victor Perevertkin d424a0e088
[WININET_WINETEST][URLMON_WINETEST][SHELL32_APITEST] Skip some tests
Due to hangs on test machines
ROSTESTS-357 ROSTESTS-358 CORE-17057
2020-06-08 03:43:43 +03:00
Amine Khaldi 139a3d6661
[CMAKE] Implement PCH builds with target_precompile_headers. CORE-16905 2020-06-06 21:58:41 +03:00
Katayama Hirofumi MZ 99b52df014
[SHELL32][INCLUDE] Improve CheckEscapesA/W (#2795)
Fix and improve shell32!CheckEscapesA/W functions.
Add a testcase for shell32!CheckEscapesA/W to shell32_apitest.
2020-05-28 10:58:26 +09:00
Katayama Hirofumi MZ 5800ee5e27
[SHELL32_APITEST] Strengthen SHChangeNotify testcase (#2797)
Investigate on nSources and fRecursive parameters. CORE-13950
2020-05-19 09:29:42 +09:00