Commit Graph

47 Commits

Author SHA1 Message Date
Vadim Zeitlin
a7dfedf602 Skip URL test if it fails when running on AppVeyor
Failing it is not useful, this results in the CI failure when in 99% of
the cases the transient network problem which resulted in this test
failure has nothing to do with the changes being tested.
2020-12-04 19:29:59 +01:00
PB
f57f214122 Remove BCC-specific hdrstop pragma from everywhere 2020-10-12 21:58:37 +02:00
Ryan Norton
b7f3a2b30f Make parsing wxURI paths more conforming to RFC 3986
Don't recognize the "path" following the port number without a slash as
a path, this is invalid according to the RFC.

Also require two leading slashes for URIs without the authority part.
2019-02-23 14:36:36 +01:00
Vadim Zeitlin
466a2d000f Use CHECK() in wxURI unit test case
This allows the subsequent tests to still run even if one of the tests
fails, which is more useful in this test than CPPUNIT_ASSERT_EQUAL(),
which maps to REQUIRE() and so stops the test execution as soon as any
check fails, because the tests are independent.
2019-02-23 14:11:58 +01:00
Vadim Zeitlin
3c468260ff Retry in URL test when running in a CI environment
There are episodic failures in this test when running under AppVeyor,
check if retrying to connect can work around them.
2019-01-12 15:39:09 +01:00
Vadim Zeitlin
50c90f9174 Use wxScopedPtr<> in URL unit test
Don't leak the stream if an error happens in the rest of the test.
2019-01-12 15:35:44 +01:00
Vadim Zeitlin
dcee3ce899 Suppress some harmless clang warnings in the test suite
Use wxCLANG_WARNING_SUPPRESS() to avoid multiple warnings in CATCH
headers as well as in some of our own tests.
2019-01-04 23:51:31 +01:00
Maarten Bent
57180d68c8 Add wxOVERRIDE to test files
And cleanup some tailing spaces and tabs.
2018-07-29 12:08:53 +02:00
Vadim Zeitlin
0b8c4d54a8 Don't run FTP unit test by default any longer
ftp.wxwidgets.org seems to have gone, breaking the existing test (thanks
chris for all the fish...), so don't hardcode this URL in the test and,
without it, don't run the test by default any more and require
specifying a working FTP host (as well as an existing directory and a
file on it) when running it manually.

Rewrite the test using normal functions instead of Java-like structure
imposed by CppUnit to make it simple to skip it.
2017-11-22 22:48:05 +01:00
Vadim Zeitlin
e70fc11ef1 Replace CppUnit with Catch for unit tests
Drop the legacy CppUnit testing framework used for the unit tests.
Replacing it with Catch has the advantage of not requiring CppUnit
libraries to be installed on the system in order to be able to run
tests (Catch is header-only and a copy of it is now included in the
main repository itself) and, in the future, of being able to write
the tests in a much more natural way.

For now, however, avoid changing the existing tests code as much as
[reasonably] possible to avoid introducing bugs in them and provide
the CppUnit compatibility macros in the new wx/catch_cppunit.h header
which allow to preserve the 99% of the existing code unchanged. Some
of the required changes are:

 - Decompose asserts using "a && b" conditions into multiple asserts
   checking "a" and "b" independently. This would have been better
   even with CppUnit (to know which part of condition exactly failed)
   and is required with Catch.

 - Use extra parentheses around such conditions when they can't be
   easily decomposed in the arrays test, due to the use of macros.
   This is not ideal from the point of view of messages given when
   the tests fail but will do for now.

 - Rewrite asserts using "a || b" as a combination of condition
   checks and assert macros. Again, this is better anyhow, and is
   required with Catch. Incidentally, this allowed to fix a bug in
   the "exec" unit test which didn't leave enough time for the new
   process to be launched before trying to kill it.

 - Remove multiple CPPUNIT_TEST_SUITE_NAMED_REGISTRATION() macros,
   our emulation of this macro can be used only once.

 - Provide string conversions using Catch-specific StringMaker for
   a couple of types.

 - Replace custom wxImage comparison with a Catch-specific matcher
   class.

 - Remove most of test running logic from test.cpp, in particular don't
   parse command line ourselves any longer but use Catch built-in
   command line parser. This is a source of a minor regression:
   previously, both "Foo" and "FooTestCase" could be used as the name of
   the test to run, but now only the latter is accepted.
2017-11-02 01:53:16 +01:00
Vadim Zeitlin
d0c57dbef0 Fix string iteration logic in wxFTP::Pwd()
wxString iterators can't be dereferenced once they reach the end of the
string, so compare them with end rather than checking if the value they point
to is non-NUL.

This makes wxFTP::Pwd() actually work, which was apparently broken since quite
some time (perhaps ever since c9f7896861 9+
years ago).

Closes #17679.
2016-09-25 01:20:41 +02:00
Vadim Zeitlin
461d0b2005 Connect to the FTP server in a single place in wxFTP unit test
As all tests need a valid connection, just do it once in the test set up
instead of duplicating the call to Connect() in all tests.

No real changes.
2016-09-25 01:19:53 +02:00
Vadim Zeitlin
314630945a Fix wxURI::Unescape() to work with Unicode strings
Such strings are not really URIs as they should have been encoded if they were
but we can obtain them from e.g. wxFileSystem::FindFirst(), so handle them
correctly here as it's simpler than checking all the places where Unescape()
is called.

Add a unit test checking that decoding an URI containing both Unicode and
percent-encoded Unicode characters works correctly.
2016-02-13 04:01:27 +01:00
Dimitri Schoolwerth
8f8d58d193 Use wx-prefixed macros throughout the repository.
Change {DECLARE,IMPLEMENT}_*CLASS and {DECLARE,BEGIN,END}_EVENT_TABLE
occurrences to use the wx-prefixed version of the macros.
2015-04-23 22:00:35 +04:00
Vadim Zeitlin
4c90d08f43 Fix the expected size of the header logo on www.wxwidgets.org.
The image has been updated in the website repository and online, update its
expected size to reflect it and fix the unit test suite.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@78448 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2015-02-04 17:44:57 +00:00
Vadim Zeitlin
9151248ee0 Update the URL of the web site images used in the test.
The old images don't exist any more after web site redesign.

Also, the new favicon can't be loaded from an unseekable stream because it
contains multiple icons, so point to the old favicon instead.

Closes #16049.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@76089 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-03-06 13:53:14 +00:00
Vadim Zeitlin
3f66f6a5b3 Remove all lines containing cvs/svn "$Id$" keyword.
This keyword is not expanded by Git which means it's not replaced with the
correct revision value in the releases made using git-based scripts and it's
confusing to have lines with unexpanded "$Id$" in the released files. As
expanding them with Git is not that simple (it could be done with git archive
and export-subst attribute) and there are not many benefits in having them in
the first place, just remove all these lines.

If nothing else, this will make an eventual transition to Git simpler.

Closes #14487.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74602 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2013-07-26 16:02:46 +00:00
Dimitri Schoolwerth
e3778b4d9c No code changes, fixed some typos.
Changed several occurrences of "it's" where "its" is meant, as well as a few other minor typos.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@67656 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2011-04-30 10:57:04 +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
Francesco Montorsi
20ba398d1a disable FTPTestCase by default.
Add a warning for the user when running --list without arguments: not all tests are listed, only those enabled by default (e.g. FTPTestCase doesn't appear there)!


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64460 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-06-02 10:49:44 +00:00
Francesco Montorsi
ec0e093913 move all non-interactive FTP tests from the console sample to a new CppUnit FTPTestCase test.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64422 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-05-29 07:56:08 +00:00
Francesco Montorsi
00e075e551 Committing modified version of jwiesemann's patch (see #11223):
Fix wxURL copy ctor and assignment: the default ones provided by the compiler are wrong because wxURL uses pointers internally. 
Also add a test for copy & assignment in URLTestCase.

Closes #11223

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@63806 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2010-03-30 21:38:31 +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
Francesco Montorsi
1f51673bb8 add wxURL::GetInputStream test unit; add a global IsNetworkAvailable() utility to the test units
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@60851 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-06-01 11:30:50 +00:00
Vadim Zeitlin
62e3e6c2bc fix wxURI::GetUser() for URIs without password; added unit test case for it (closes #10412)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58272 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2009-01-21 17:02:11 +00:00
Vadim Zeitlin
c4dbb95303 fix parsing of IP literals in URIs, added test for it
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55864 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-09-25 15:27:10 +00:00
Vadim Zeitlin
c3a65218fb introduced more convenient and readable URI_ASSERT_XXX_EQUAL() macros
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@55863 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-09-25 14:08:01 +00:00
Vadim Zeitlin
2186321ff5 big wxURI cleanup; it now handles Unicode characters correctly (#3874)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@54723 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-07-19 23:14:51 +00:00
Vadim Zeitlin
5c3d5ef246 simplify the test, don't reuse the same macro for different things
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@54697 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-07-18 23:08:24 +00:00
Vadim Zeitlin
9fc7a1d276 disable test using network by default as it's not available on some of buildbot machines and so makes the test fail
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@53866 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2008-05-30 23:38:56 +00:00
Vadim Zeitlin
0475aefcb4 removed WXWIN_COMPATIBILITY_24
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@44683 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2007-03-08 01:33:01 +00:00
Vadim Zeitlin
402ccadcdd disable bogus test
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@43249 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-11-10 00:17:46 +00:00
Vadim Zeitlin
97ad053bff more standard (although less RFC-conformant) treatment of file: URIs (patch 1415189)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@37403 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2006-02-09 03:09:36 +00:00
Michael Wetherell
6c1a7bc483 Temporarily disable test that takes a long time to run, needs moving to a named registry
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@35904 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-10-15 19:04:29 +00:00
Włodzimierz Skiba
fd725bce37 Patch #1222244: Fixes for bug #1212853 with unit test.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@34689 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-06-17 11:29:55 +00:00
Vadim Zeitlin
24fec90857 added tests of more URLs in URITestCase::URLCompat()
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@34568 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-06-07 12:19:28 +00:00
Vadim Zeitlin
24ca04e7aa fix for fixing of escape sequences (patch 1213416)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@34567 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-06-07 12:17:33 +00:00
Mattia Barbon
26531700c7 Correct compilation conditions for wxURL::SetProxy.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32926 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-19 23:09:31 +00:00
Włodzimierz Skiba
6ca3a32256 Unicode fix.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32825 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-14 19:52:52 +00:00
Ryan Norton
e605541c36 "test" for testing a [fixed] proxy crash (from last commit)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32809 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2005-03-14 03:33:50 +00:00
Ryan Norton
8899b155a1 [ 1068188 ] Precompiled header for the test program [Modified a bit]
Regen bakefiles for unit tests


git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30685 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-22 05:00:19 +00:00
Ryan Norton
990e581091 clean up dust from uri tests
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30352 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-08 00:23:52 +00:00
Ryan Norton
113e181a8a update msvc projs manually for changed tests and uri tests and rebake others
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30351 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-08 00:17:00 +00:00
Włodzimierz Skiba
2b9afe407e URL conditional and consistent intendation.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30278 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-11-04 21:56:29 +00:00
Ryan Norton
86470d432f final wxURI API changes. Changed Get to BuildURI to better reflect what its doing. Added wxURI::Unescape to unescape characters in a url or uri. Added wxURI::BuildUnescapedURI. Changed the wxURL convertXXXuri methods to use uri methods instead, and depreciated these methods.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30138 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-10-28 09:57:43 +00:00
Ryan Norton
b60b2ec8ac Inherit wxURL from wxURI, providing assignment, copy construction, comparison, and less duplication of code. Change wxURI a bit to meet some of Vadim's reccommendations - move accessors into header, and finish some of his other reccom. Change assignment to use const wxString& instead of const wxChar*. Change wxURI docs to reflect that it inherits from wxObject. Made preliminary docs for the wxURL transition. Add some unit tests for the transition.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30136 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-10-28 06:49:46 +00:00
Ryan Norton
dd65d8c830 wxURI. Move Convert/to/fromURI into uri.cpp so that it is compiled in base. Regenerate Bakefiles.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@30125 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2004-10-27 22:47:26 +00:00