Commit Graph

261 Commits

Author SHA1 Message Date
Vadim Zeitlin
d326d52cd9 Use setUp/tearDown() for NumFormatter test case locale setup.
Setting the locale in the ctor of the test object doesn't work because the
locale is changed by the other tests that run before this one, use the
initialization method provided by cppunit to change the locale instead, this
is somewhat wasteful but at least it does work, unlike the old version.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66718 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-01-19 15:08:11 +00:00
Vadim Zeitlin
a54cf37118 Add wxIntegerValidator and wxFloatingPointValidator classes.
Add validators for integer and floating point numbers.

Add an example of their use to the validate sample as well as a new unit test
and documentation for them.

Use the new classes instead of wxTextValidator in wxGrid code.

Closes #12166.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66714 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-01-19 10:48:28 +00:00
Vadim Zeitlin
f2a5052baa Add support for long long to wxNumberFormatter.
It seems to make sense to allow using it for formatting and parsing long long
values as well as it can be done trivially using almost the same code as for
long.

It would be nice to support long double in a similar way but we don't wrap
C99 strtold() right now so it wouldn't be as simple, leave it for later.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66712 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-01-19 10:47:57 +00:00
Vadim Zeitlin
6686fbad16 Add wxNumberFormatter class helping to deal with thousands separators.
wxNumberFormatter formats and parses numbers with thousands separators.

Add the class itself as well as documentation and the unit test for it.

See #12166.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66710 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-01-19 10:47:40 +00:00
Vadim Zeitlin
87f528f15b Disable unit tests which can't work in ANSI build.
Disable unit tests involving operations (such as conversions between UTF and
anything but plain ASCII) not available in ANSI build.

This fixes the test suite for non-Unicode build under Unix.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66103 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-11-10 13:53:49 +00:00
Vadim Zeitlin
23231f1c71 Fix wxString::{Before,After}{First,Last} unit test for ANSI build.
The test used a wide character constant and so didn't work in ANSI build. Use
an ASCII string there now while still keeping the original version in Unicode
build.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@66101 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-11-10 13:53:34 +00:00
Vadim Zeitlin
6becc1e617 Added "rest" argument to wxString::Before{First,Last}().
This allows to search the string just once, in BeforeXXX(), when both the
parts of the string before and after some character are needed instead of
having to do it twice in both BeforeXXX() and AfterXXX().

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65862 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-22 14:17:37 +00:00
Vadim Zeitlin
bdb40fa63e Implement comparisons between wxString::iterator and const_iterator.
Only comparisons between const_iterator and iterator worked before (because of
implicit conversion from the latter to the former), implement the ones in the
other direction explicitly now.

Closes #12594.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65857 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-21 19:22:33 +00:00
Vadim Zeitlin
43f8864bb0 Use wxUSING_VC_CRT_IO for MSVC CRT-specific test results.
Move USING_VC_CRT into testprec.h to allow its reuse in other files and rename
it to wxUSING_VC_CRT_IO as it only checks whether we're using MSVC STDIO
implementation and could be false even when we are otherwise using MSVC CRT.

Use this symbol for the tests whose result depends on the concrete version of
the CRT we use.

This fixes StringTestCase::FromDouble() failure under MinGW.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65745 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-03 17:16:00 +00:00
Vadim Zeitlin
051d655703 Fix VsnprintfTestCase for recent MinGW versions.
MinGW now uses its own printf() implementation which handles %p differently
from the VC CRT one and uses %8x instead of %8X for it. Compare the results of
wxPrintf("%p") case-insensitively to let the test pass in any case.

Also introduce a USING_VC_CRT macro instead of testing for
__USE_MINGW_ANSI_STDIO in two different places.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65738 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-03 17:15:10 +00:00
Vadim Zeitlin
89ff7e9fb1 Remove redundant wxUSE_WXVSNPRINTF checks from the unit test.
The entire VsnprintfTestCase is only used when using our own
wxUSE_WXVSNPRINTF so remove the redundant tests for it inside the enclosing #if.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@65737 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-10-03 17:15:04 +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
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
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
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
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
Francesco Montorsi
ffcd6cc61e fix StringTestCase::FromDouble: newer MSVC versions use three digits for the exponent width
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64470 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-06-02 14:56:58 +00:00
Francesco Montorsi
3634064463 Move some wxPrintf() tests (taken from glibc) to VsnprintfTestCase. Other tests are more difficult to convert in CppUnit style and not worth the effort (since now we don't use wx's own vsnprintf implementation anymore typically).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64468 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-06-02 14:42:26 +00:00
Vadim Zeitlin
951201d81c Add wxString::FromDouble() and FromCDouble().
wxString::FromCDouble() is needed inside wxWidgets itself to format numbers
independently of the current locale. FromDouble() was added for symmetry with
ToDouble/ToCDouble() functions.

Use std::locale for the implementation if available and manual wxLocale-based
fallback otherwise.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64449 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-05-31 11:55:48 +00:00
Vadim Zeitlin
1a39b0131f No real changes, just avoid an unnecessary heap allocation in a test.
We don't need to allocate the locale object in StringTestCase::ToDouble() on
the heap (and then delete it -- or not, if an assertion fails before the
function end), it's enough and simpler to just create it as a local variable.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64447 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-05-31 11:55:37 +00:00
Vadim Zeitlin
6889fa2c0b Remove non-working or semi-working tests added from console.cpp.
Remove tests added in r64324, there is no need to have commented out code
here and UTF-8 test was pretty strange as well (it's far from clear what
should the result of converting "utf8Invalid" be).

This also suppresses a warning that these changes introduced.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64387 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-05-23 10:53:17 +00:00
Francesco Montorsi
210bfffb97 move TestUtf8() and TestEncodingConverter() functions to UnicodeTestCase. Disable some code which does not run clean and mark it with FIXME comments (needs revision).
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64324 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-05-16 15:32:41 +00:00
Václav Slavík
3acf8a8d9b Remove wxLOCALE_CONV_ENCODING flag.
This doesn't affect Unicode builds, only the legacy ANSI one.

PO files are now always converted to the appropriate charset according
to current locale. This was the default behavior for long time; not
doing the conversion was always a fragile hack that didn't work well.
Removing this flag simplifies wxLocale code.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63993 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-16 11:29:22 +00:00
Václav Slavík
f30bd8f262 Add wxLOCALE_DONT_LOAD_DEFAULT (=0) for clarity.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63992 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-16 11:29:09 +00:00
Vadim Zeitlin
e3ab69523b Add wxString::ToStdString() and ToStdWstring().
These trivial helper functions are available in all builds (provided that
wxUSE_STD_STRING is not explicitly set to non-default 0 value) unlike implicit
conversions to std::[w]string which are only available when wxUSE_STL==1.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63938 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-04-11 11:08:49 +00:00
Vadim Zeitlin
cbab155657 No real changes, just fix a typo in comments and documentation.
Use "surprising" instead of (common) "surprizing" misspelling.

Closes #11627.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63154 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-01-14 18:02:26 +00:00
Vadim Zeitlin
874dbd3a4a Allow calling wxStrchr() with a narrow string and wide character.
Calls to wxStrchr(char-string, wide-char) would previously fail if wide
character couldn't be converted to a single character in the current locale
encoding. Change it to simply return NULL in this case as it's a safe and
useful generalization: a narrow string will never contain a wide character not
representable in the current locale.

Add wxUniChar::GetAsChar() to help with implementing this.

Closes #11487.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62738 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-11-28 14:37:03 +00:00
Vadim Zeitlin
bbb0ff36db Fix another off-by-1 bug in wxMBConv::ToWChar().
When converting a fixed number of characters we need to take any NULs inside
the buffer being converted into account for our return value -- but this
wasn't done and converting 2 characters 'x' and '\0' returned only 1, even if
the length 2 was explicitly specified.

Fix this bug and add a unit test checking for it.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62141 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-26 13:31:27 +00:00
Vadim Zeitlin
4bc9acbe16 No changes, just convert file to UTF-8.
All files in svn are supposed to use UTF-8 now so convert this one to UTF-8
too before committing more changes to it (which would be otherwise rejected by
pre-commit hook).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@62140 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-09-26 13:31:20 +00:00
Vadim Zeitlin
69d31e3130 Output the extracted number from wxString::ToXXX() even if it returns false.
After the changes in r50710 wxString numeric conversion functions didn't
update their output parameter any more if the conversion failed because not
entire string was converted. This was incompatible with the old behaviour
which some existing code did rely on, so restore it and now always return the
number which was extracted from the beginning of the string if we found
anything at all, even if the function returns false.

Add unit test for the correct behaviour and updated the documentation.

Closes #11126.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61786 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-08-30 17:25:19 +00:00
Vadim Zeitlin
9a83f86094 Globally replace _T() with wxT().
Standardize on using a single macro across all wxWidgets sources and solve the name clash with Sun CC standard headers (see #10660).

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@61508 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-07-23 20:30:22 +00:00
Vadim Zeitlin
787de19a13 update CRT environment block in wxSetEnv() too
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@60728 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-05-24 15:33:33 +00:00
Vadim Zeitlin
75ac34cefc fix support for using asterisks in the format string and some code cleanup
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@60120 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-04-12 23:37:28 +00:00
Vadim Zeitlin
390b8241d3 revert r60023 and really fixed compilation problems caused by r60017 by providing assertEquals(const char *, const char *) overload as well
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@60024 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-04-04 23:55:05 +00:00
Vadim Zeitlin
0eb83a1a72 compilation fix after r60017
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@60023 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-04-04 22:33:20 +00:00
Vadim Zeitlin
245ff47f7c fix the test for !wxUSE_UNICODE_UTF8 builds: don't suppose that strings are UTF-8 encoded in VsnprintfTestCase::S() but use FromUTF8() explicitly (how did it manage to work with VC9 before?)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@60018 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-04-04 16:45:23 +00:00
Vadim Zeitlin
3879212eee fix VsnprintfTestCase::P() for mingw32 which may use MSVC CRT (closes #10679)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@60016 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-04-04 16:02:23 +00:00
Vadim Zeitlin
727e8d842f fix the test case which wrongly relied on wxString using UTF-8 representation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@60004 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-04-03 17:03:16 +00:00
Vadim Zeitlin
27dd021da3 fix the test case which wrongly relied on wxString using UTF-8 representation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@60003 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-04-03 17:02:12 +00:00
Václav Slavík
de4983f323 split wxCharTypeBuffer<T> into wxScopedCharTypeBuffer<T> and wxCharTypeBuffer<T> -- the former is for transient data with validity limited to parent's lifetime, the latter is for permanent storage of string data (bug #9638)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59887 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-27 15:33:55 +00:00
Francesco Montorsi
16f7158098 put wxSetLocale() call in setUp() as VC6 still fails because of wrong locale in VsnprintfTestCase
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59785 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-23 16:25:44 +00:00
Francesco Montorsi
ca5016d4dd make sure that wxProcess always have a valid PID set; add test unit for wxExecute,wxShell,wxProcess based on the code in the console sample; add some more infos/notes in wxProcess docs
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59784 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-23 16:23:44 +00:00
Francesco Montorsi
12e91a550c fix typo; use C locale for VsnprintfTestCase
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59765 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-23 12:17:39 +00:00
Francesco Montorsi
529e491ce0 add the ToCLong, ToCULong and ToCDouble functions, with docs and test units
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59645 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-20 14:50:06 +00:00
Francesco Montorsi
fdfc5e18e7 comment-out tests provoking a low-level assert from debug CRT libs in MSVC 2008 (2005 probably affected too)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59635 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-20 01:03:38 +00:00
Václav Slavík
862bb5c73a renamed ATTRIBUTE_PRINTF to WX_ATTRIBUTE_PRINTF to avoid naming conflicts (e.g. with latest libxml2)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59479 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-11 07:51:38 +00:00
Vadim Zeitlin
072682ce44 optimize Replace() to use a linear algorithm (closes #9135)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@59420 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-03-07 16:07:58 +00:00
Francesco Montorsi
35d3edcd53 make the testcase more readable; add a few checks to Asterisk() test; make unicode part of S() test compile with MSVC
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58989 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-02-18 14:57:42 +00:00
Francesco Montorsi
103339b01e fixed test failures under wxMSW when using our wxVsnprintf implementation (remains 1 bug introduced by the wx29 string changes)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58962 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-02-17 11:11:50 +00:00
Vadim Zeitlin
166523d8d7 calling wcsnlen(NULL) does crash (under Debian and, according to the docs, should also crash with MSVC), contrary to what the comment claimed so don't do this
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58152 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-16 17:48:59 +00:00
Francesco Montorsi
7c5ac499c8 provide our own implementation of wxStrnlen if it's not available; add tests for it
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58069 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-13 12:01:30 +00:00
Vadim Zeitlin
39e12b2d52 don't use \u in strings, VC6 doesn't support this
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57832 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-04 15:53:09 +00:00
Vadim Zeitlin
93a800a95e minor icc warning fixes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56845 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-11-19 09:55:27 +00:00
Vadim Zeitlin
527587d347 really fix VC6 compilation of all testsi (without breaking VC9)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56656 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-11-03 00:31:16 +00:00
Vadim Zeitlin
94bc35dc33 explicitly cast wxUniCharRef to char inside CPPUNIT_ASSERT_EQUAL
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56640 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-11-02 01:59:34 +00:00
Vadim Zeitlin
c565abe1c5 fix After{First,Last}() to work for strings with non-ASCII characters in UTF-8 build and added unit tests for this
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55944 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-09-29 12:08:44 +00:00
Václav Slavík
6bd4f2812d fixed writing to wxUniCharRef after its 'parent' iterator was destroyed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55285 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-08-26 13:02:38 +00:00
Vadim Zeitlin
817d057840 added test for Replace(whatever, "")
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55032 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-08-09 15:50:24 +00:00
Vadim Zeitlin
0c7db140c5 add wxString::Capitalize() and MakeCapitalized() for consistency with Upper/Lower() we already have
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@54915 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-08-01 23:39:11 +00:00
Václav Slavík
2f539d953b added a test for passing wxCharBufer to wxprintf functions
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@54811 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-07-29 13:32:35 +00:00
Vadim Zeitlin
e3276230de fix bug with wxCSConv("ASCII")
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@54703 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-07-19 01:45:38 +00:00
Vadim Zeitlin
1de532f57e get rid of special WX_ASSERT_FOO_EQUAL macros by defining CppUnit::assertEquals() overloads for wx types
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@54696 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-07-18 23:07:23 +00:00
Vadim Zeitlin
42e8b52f09 make test failures easier to debug by using more informative failure messages
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@54672 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-07-17 23:24:21 +00:00
Vadim Zeitlin
ae43193571 don't run the tests which can't succeed in ANSI build; remove the tests for wxUSE_WCHAR_T, it's always 1 now; test MB2WC conversions in Unicode build too (it only tested WC2MB for some reason)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@54671 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-07-17 23:01:17 +00:00
Vadim Zeitlin
339e08c704 use CPPUNIT_ASSERT_EQUAL(x,y) instead of CPPUNIT_ASSERT(x==y) to better see test failures
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@54643 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-07-15 18:00:49 +00:00
Vadim Zeitlin
fa0584f14d use CPPUNIT_ASSERT_EQUAL(x,y) instead of CPPUNIT_ASSERT(x==y) to better see test failures
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@54642 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-07-15 17:38:03 +00:00
Vadim Zeitlin
062dc5fc22 initialize wxStringBuffer with the original contents of wxString it was created from for better compatibility with the old, non-STL, build (this avoids problems such as ticket #4845); add wxString::tchar_buf() to help with the implementation
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@53995 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-06-06 21:19:23 +00:00
Vadim Zeitlin
44c6d979a8 removed the test which never works: Lower/Upper() don't work with Unicode strings currently
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@53992 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-06-06 20:55:39 +00:00
Vadim Zeitlin
7ace5fd8e0 include wx/crt.h to get wxUSE_WXVSNPRINTF
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@53904 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-06-01 16:58:17 +00:00
Vadim Zeitlin
05b5a45f96 don't run vsnprintf() test if we're using the system version, there is nothing we can do about its failures then anyhow
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@53857 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-05-30 22:11:51 +00:00
Vadim Zeitlin
fc215b4140 don't compile the test in the build configurations where it's not supported (trying to fix buildbot OS X build)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@53856 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-05-30 21:59:24 +00:00
Michael Wetherell
6ed28b941c Compile fixes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@51944 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-02-20 22:28:02 +00:00
Vadim Zeitlin
5098c258b2 compilation fixes for VC6
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@51188 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-01-13 01:13:03 +00:00
Vadim Zeitlin
f312f981b5 added tests for FromAscii/Unicode() (length parameter); cleaned up ctors test
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@51184 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-01-12 20:58:03 +00:00
Michael Wetherell
31c0639151 Missing header.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@50985 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-01-02 08:04:30 +00:00
Vadim Zeitlin
99d8bc6593 added a trivial test for wxString stream insertion operators
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@49102 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-10-09 00:10:07 +00:00
Vadim Zeitlin
2452025c59 fix a couple of harmless warnings in MSVC build
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48697 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-09-14 23:33:46 +00:00
Vadim Zeitlin
c2c87924e7 use WX_ASSERT_STR/SIZET_EQUAL instead of CPPUNIT_ASSERT_EQUAL with casts
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48469 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-08-30 20:21:49 +00:00
Vadim Zeitlin
fe1b98f5d5 fix resize() when it's used for truncating a string in UTF-8 build; added test for this bug
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48464 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-08-30 18:13:29 +00:00
Václav Slavík
4734640692 fixed variadic templates in the case when char value is passed in place of (e.g.) %i or %d argument
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48224 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-08-20 19:20:10 +00:00
Václav Slavík
628f87da56 added wxUTF8StringBuffer for writing UTF8 data into wxString efficiently, similarly to existing wxStringBuffer classes
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48222 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-08-20 15:19:15 +00:00
Václav Slavík
74374c9ecd Vadim's new test broke subsequent asserts, fixed
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48215 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-08-20 12:30:06 +00:00
Vadim Zeitlin
c8f313b256 added tests demonstrating a bug in wxString::assign(itself)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@48214 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-08-20 10:38:22 +00:00
Vadim Zeitlin
b899f05f9e harmless warning fix
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47688 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-07-23 22:34:29 +00:00
Vadim Zeitlin
1a5cd56aac compilation fix for ANSI build (added #if wxUSE_UNICODE)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47118 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-07-04 20:35:42 +00:00
Václav Slavík
7315ad282d test wxVsnprintf() printing to both wchar_t* and char* buffers
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47025 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-06-29 17:30:56 +00:00
Václav Slavík
39c20230ba 1. added default constructors for wxString iterators
2. fixed assignment of iterator to iterator that points to a different string

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46996 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-06-28 12:49:58 +00:00
Václav Slavík
81e9dec6f5 use same names for test suites as the ones in ./test -l
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46992 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-06-28 07:54:15 +00:00
Václav Slavík
7978bc7293 remove implicit conversion to C strings from wxString if wxUSE_STL=1; this fixes problems with converting between wxString and std::string in some situations at the cost of having to use c_str() explicitly just as you have to when using std::string
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46554 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-06-20 07:47:51 +00:00
Vadim Zeitlin
105260e89f overload wxStrpbrk() for more types and add tests for it
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46450 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-06-13 15:31:09 +00:00
Vadim Zeitlin
f291c98e52 use CPPUNIT_ASSERT_EQUAL instead of CPPUNIT_ASSERT as this gives more detailed information in case of a test failure
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46446 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-06-13 14:29:02 +00:00
Vadim Zeitlin
af9c764aa1 strWC used in the tests was supposed to be a wide string, not a narrow one
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46445 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-06-13 14:21:40 +00:00
Vadim Zeitlin
10de049c42 Unicode compilation fix: wxStrlocale() doesn't take wide strings
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46444 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-06-13 14:19:24 +00:00
Václav Slavík
52de37c78f 1. made CRT wrappers definitions indepenent of wxUSE_UNICODE: both ANSI and Unicode variants are now defined
2. split wxcrt.h into wxcrtbase.h with lowlevel compiler-specific definitions and wxcrt.h with ANSI- and Unicode-compatible wx wrappers


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46390 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-06-10 17:14:14 +00:00
Václav Slavík
eb6cb20793 fixed wxScanf() etc. to compile with Visual C++ again
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@46341 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-06-06 13:48:24 +00:00