Commit Graph

1688 Commits

Author SHA1 Message Date
Vadim Zeitlin
0c6a98a443 Disable wxEVT_COMMAND_LIST_ITEM_FOCUSED test for wxMSW.
This test fails on MSW buildbot slaves for unknown reasons so disable it to
make the test suite pass. The failure is irreproducible locally so no idea how
to debug this unfortunately.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65694 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-30 17:35:01 +00:00
Vadim Zeitlin
cdd233ef81 Expect an assert in wxVsnprintf() test with too many parameters.
The call to wxPrintf() should provoke an assert if there are too many
parameters, so update the test to expect it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65688 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-30 14:30:23 +00:00
Vadim Zeitlin
32f6c515fd Disable test failing under VC6 only.
Somehow the expected assert is not generated by wxString::Format("%d", ptr)
with VC6. Disable this test to make the test suite pass for VC6 for now to at
least be able to monitor the appearance of the new errors in it.

Of course, this one should ideally be debugged (by someone who is interested
in VC6 support) as well...

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65687 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-30 14:30:18 +00:00
Vadim Zeitlin
1cef35cad3 Insert another item in the list control in its unit test.
For some reason the test fails with a single item in the control when running
on the buildbot slave, check if this is still the case if we add another item
to the control.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65686 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-30 14:30:13 +00:00
Steve Lamerton
da7ae3570a Remove an assert that was not backed up by the documentation and so failed on some platforms but not on others. Re-enable some tests that were disabled in wxGTK as they now pass.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65597 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-23 17:02:08 +00:00
Steve Lamerton
4ceca85497 Add ClearEventCount to wxTestableFrame. This means we can clear an event count when an event counter goes out of scope so the are no spurious results in later tests.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65596 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-23 16:55:29 +00:00
Steve Lamerton
a323f63a8d Re-enable disabled wxWindow label tests under wxGTK as they were fixed in r65374
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65588 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-22 12:45:45 +00:00
Steve Lamerton
92d9d10f80 Send generic wxListCtrl wxEVT_COMMAND_LIST_KEY_DOWN events from OnKeyDown rather than OnChar. Also remove the HasCurrent check. These changes bring the generic control into line with the control under wxMSW. Re-enable the previously failing unit test and document that the key down event might not have a valid item associated with it.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65586 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-22 08:48:15 +00:00
Vadim Zeitlin
5858fe6806 Don't use native MSW functions in wxString::CmpNoCase().
While the native CompareString() is much more efficient than MSVC CRT version
of _wcsicmp(), it gives unexpected results for non-letter characters, so don't
use it but use the slow but correct wxStricmp() instead.

At least don't use char-by-char comparison (in non-UTF-8 case) as it's the
slowest possible implementation of this function, the new one using
wxStricmp() is 3 times faster (by comparison, using CompareString() is 16
times faster still -- but wrong).

Closes #10375.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65572 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-20 12:52:26 +00:00
Vadim Zeitlin
05f68f2f84 Add benchmarks for various ways to compare strings.
Benchmark the abstraction overhead of wxString methods compared to plain
functions and also benchmark native functions for string comparison under MSW.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65571 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-20 12:52:21 +00:00
Vadim Zeitlin
ad1ca29690 Flush output after every benchmark.
This purely cosmetic change simply allows to see the output of the benchmarks
sooner which is more user-friendly when running several long benchmarks.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65570 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-20 12:52:15 +00:00
Steve Lamerton
89416032c2 Increase the number of expected events in TreeCtrlTestCase::KeyDown and ListBaseTestCase::KeyDown from four to six as this is the number of events seen when testing using their samples. This also stops the tests failing after the recent keyboard event improvements.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65568 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-19 10:02:57 +00:00
Dimitri Schoolwerth
b5b208a179 Set svn properties on .cpp files.
Add missing svn:eol-style property to all .cpp files. Also set svn:keywords for .cpp files which don't have that property yet to Id, including src/osx/core/glgrab.cpp for consistency (it doesn't make use of the property).


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65561 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-17 11:17:55 +00:00
Vadim Zeitlin
d0fb62a656 Generate the same flags for modifier key events in wxGTK as in wxMSW.
Resolve the discrepancy between modifier flags of the key events corresponding
to the modifier key itself between wxMSW and wxGTK by changing the latter to
follow wxMSW behaviour.

Clearly document the now officially correct behaviour of the modifiers for the
key events corresponding to the modifiers keys themselves in the manual.

This fix also makes it unnecessary to work around this bug in the keyboard
unit test so remove it from there.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65527 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-11 10:19:14 +00:00
Vadim Zeitlin
7333c0ef82 Generate unshifted Unicode key codes in wxEVT_KEY_XXX events in wxGTK.
wxGTK generated wxEVT_KEY_XXX with key codes corresponding to the unshifted
state of the key (except for the letters) but Unicode key codes corresponding
to the current shift state. This was inconsistent with wxMSW and also with the
idea that key events, unlike char ones, don't depend on the modifiers states.

Change wxGTK to behave as wxMSW and use unshifted values for Unicode key codes
as well.

Remove the now unnecessary workaround for different key event Unicode codes
from test.

Also try to explain the difference between normal and Unicode keys and key and
char events even better and mention that the Unicode key codes for the key
events are also untranslated in the documentation.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65526 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-11 10:19:07 +00:00
Vadim Zeitlin
042ddf5def Add a simple test for keyboard events generation.
Check that the events generated by wxUIActionSimulator result in the same
wxKeyEvents being generated under all platforms. This is not the same as
checking the event generation for the actual keys pressed by the user as there
are some small differences between the two but better than nothing.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65519 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-11 10:18:31 +00:00
Vadim Zeitlin
8cdd00f29f Add a convenient wxREGISTER_UNIT_TEST() macro.
This macro can be used to easily register a test following a standard naming
convention in both the global test suite and the test suite with the same name
as this test instead of having to use 2 different cppunit macros to do the
same thing.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65514 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-11 10:18:05 +00:00
Steve Lamerton
d377e9fe75 Simplify ButtonTestCase::Bitmap. The old test was not correct as it tested all bitmaps to see if they were valid, however these do not get set by SetBitmap and so the tests only passed if the platform set valid defaults.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65472 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-05 13:31:13 +00:00
Steve Lamerton
6e269b25f0 Fix typo from previous commit.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65471 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-05 13:14:14 +00:00
Steve Lamerton
48d133393c Move the second wxListBox sort test back to the ownerdrawn section and re-enable it under wxGTK.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65470 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-05 13:11:42 +00:00
Steve Lamerton
663a3ae1da Wrap BitmapToggleButtonTestCase in a preprocessor check so compilation shouldn't fail on platforms that don't support it.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65469 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-09-05 12:47:46 +00:00
Robert Roebling
a6856aa899 Reenable sorting tests for GTK
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65400 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-24 17:22:12 +00:00
Vadim Zeitlin
39f3816783 Compilation fix: forward declare wxTextEntry in unit tests code.
This should fix tests compilation on the build bot Mac OS X slaves.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65393 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-23 18:54:59 +00:00
Vadim Zeitlin
8859c7293e Use "C" locale for locale-dependent part of TextCtrlTestCase.
As we expect to get decimal points in the text control when we stream floating
point numbers into it, we must do it in a locale which uses decimal point,
e.g. "C" one. Otherwise the test failed when ran in e.g. French locale.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65390 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-22 23:46:02 +00:00
Vadim Zeitlin
232fdc630c Merge the new GUI tests from SOC2010_GUI_TEST branch.
Add a lot of tests for many wx GUI classes.

Add tests using the new wxUIActionSimulator class but disable them under OS X
as too many of them currently fail there.

Refactor the test suite to make organizing the existing tests and adding the
new ones easier.

Improve documentation using the information gathered while testing the
classes. Also update the documentation of the testing system itself.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65386 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-22 22:16:05 +00:00
Vadim Zeitlin
686d0cc0a6 Don't report spurious errors from wxSocket in "no wait" mode.
In wxSOCKET_NOWAIT mode wxSOCKET_WOULDBLOCK is not a real error as it's
expected and should be just discarded. Failing to do this could result in the
following scenario:

1. Try to read a big buffer with wxSOCKET_NOWAIT (setting wxSocket error to
   wxSOCKET_WOULDBLOCK).
2. Process small part of it.
3. Read more data from wxSocket -- which now goes to the data containing
   already cached data without going to the socket itself and this without
   resetting the error.
4. Check wxSocket::Error() which turns out to be (still) true.

And this was exactly what happened in mysteriously failing unit test case
reading wxImage contents from a socket: the failure was difficult to reproduce
because it depended on how much data exactly did we read from the socket in
one go.

Fix this by resetting the error properly and reenable the unit test which was
previously disabled for the build bot, it should pass now.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65378 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-21 23:33:40 +00:00
Václav Slavík
926649a996 Fix attributes escaping when writing XML.
wxXmlDocument didn't correctly escape some characters that the spec says
must be escaped. Behaves correctly now.

Fixes #12275.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65192 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-08-04 14:57:30 +00:00
Francesco Montorsi
89a76d5d2c make POSIX and Windows implementation of wxThread::Run() coherently assert when trying to Run() a thread twice; add a test for it.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65106 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-25 13:55:36 +00:00
Vadim Zeitlin
1cf9a80cc1 Don't run printf("%n") tests when _FORTIFY_SOURCE >= 2.
This prevents the test from aborting on Linux distributions which ship with
"fortified" version of gcc, such as recent Ubuntu, Fedora and Gentoo.

Closes #12240.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65004 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-18 11:52:58 +00:00
Vadim Zeitlin
b0f73b6701 Really set svn:eol-style property.
The last commit used incorrect property name, remove the erroneous property
and set the correct svn:eol-style one.


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64996 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-17 14:55:45 +00:00
Vadim Zeitlin
0fbd8b9bbb Really fix interactive output test compilation in ANSI build.
Use a temporary wxString to make sure the code compiles in both ANSI and STL
versions too.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64945 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-13 14:13:12 +00:00
Vadim Zeitlin
526954c596 Globally use "wxWindows licence" consistently.
Use "wxWindows licence" and not "wxWidgets licence" (the latter doesn't
exist) and consistently spell "licence" using British spelling.

See #12165.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64940 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-13 13:29:13 +00:00
Vadim Zeitlin
486b9734e8 Compilation fix for wxAnyTestCase in ANSI-only build.
Comparison of wxAny with wide strings is not available in this case.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64923 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-12 22:50:47 +00:00
Vadim Zeitlin
da569065d8 Compilation fix for "interactive" test in wxUSE_STL=1 build.
wxString is not convertible (even explicitly) to char* in this case.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64922 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-12 22:50:41 +00:00
Vadim Zeitlin
71e33c7524 Blind VC6 compilation fix for VarArgTestCase.
VC6 tries to use inaccessible copy ctor of the variable passed to
wxString::Format() for some reason.

Just disable the test for it, it's not worth trying to understand this
compiler, and our code gets tested with other ones anyhow.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64921 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-12 22:50:37 +00:00
Vadim Zeitlin
013078210b Disable test of format string with "%n" for MSVC 8+.
MSVC 8 and later disables support for "%n" in printf() by default. And
although it provides a function to re-enable support for it, it doesn't seem
to work for the functions we use.

Just disable the test which results in CRT assert when using this compiler.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64920 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-12 22:50:32 +00:00
Václav Slavík
b113edcdd7 Fix format strings parsing to understand C99 %zu etc.
The parser used to understand only 'Z' specifier for size_t/ptrdiff_t,
which is non-standard libc5 extension. C99 defines 'z' for this purpose,
so use that. Compatibility with 'Z' is preserved.

Also support Visual C++'s non-standard 'I' modifier with the same
meaning.

Fixes #12192.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64800 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-03 14:24:23 +00:00
Václav Slavík
3b12da351c Fix vararg type checking to accept ints for %c.
It's perfectly legitimate to format int values as %c, so don't assert in
this case.

Fixes #12192.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64798 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-07-03 14:24:12 +00:00
Václav Slavík
df67b58b5b Fix another bad format string in the testsuite.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64717 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-06-24 11:25:54 +00:00
Václav Slavík
ad6e5c47de Add tests for printf arguments validation code.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64713 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-06-24 10:34:36 +00:00
Václav Slavík
38914d5a51 Format strings fixes in test suite.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64711 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-06-24 10:34:23 +00:00
Václav Slavík
72e7920f2d Corrected formatting of archiver command in the tests.
wxString::Format() was used even when the first argument didn't contain
any %s, yet a string argument was always passed to it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64705 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-06-24 10:33:36 +00:00
Stefan Csomor
155362949b paint events cannot be constructed outside a native redraw in OSX
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64691 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-06-22 13:48:17 +00:00
Stefan Csomor
f009da6ed5 paint events cannot be constructed outside a native redraw in OSX
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64690 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-06-22 12:46:20 +00:00
Stefan Csomor
a2c8b98460 trying to get it building at least
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64689 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-06-22 11:49:09 +00:00
Francesco Montorsi
ddd4f327f7 blind buildbot fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64681 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-06-21 23:32:34 +00:00
Francesco Montorsi
995202d020 small warning+PCH fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64680 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-06-21 21:46:29 +00:00
Francesco Montorsi
81ec0e15af move console sample's interactive tests to two different CppUnit testsuites: InteractiveInputTestCase which requires user input and InteractiveOutputTestCase which outputs stuff to be checked from the user.
Leave in the console sample only a barebone console application (i.e. a real example).

Closes #11960

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64679 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-06-21 21:03:47 +00:00
Francesco Montorsi
10dee2ae3f better DirTestCase::DirExists test;
fix test cases /usr//bin and /usr///bin: they succeed because wxDir::Exists does not care about redundant path separator (and this holds also for non-Unix platforms);
add some more test case

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64678 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-06-21 19:47:14 +00:00
Francesco Montorsi
d6609db5a7 minor change: use a "positive" logic: use shouldSucceed instead of shouldFail and use more descriptive names for non-existing folders; add a few test cases
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64677 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-06-21 19:44:27 +00:00