Commit graph

172 commits

Author SHA1 Message Date
Ted John
b149c1c4ca Add unit tests for SHA1 hashing 2018-06-01 21:27:33 +01:00
Ted John
9d617958cf Return date and park by reference from game state 2018-05-30 13:12:19 +01:00
Michał Janiszewski
afdcd35fb9 Fix MultiLaunch test. 2018-05-30 11:53:32 +02:00
Ted John
6af0cb2b88 Fix import of S4 and S6 2018-05-29 18:39:12 +01:00
Aaron van Geffen
b836ad050d Rewrite CodePageFromUTF8 as CodePageFromUnicode. 2018-05-22 19:51:34 +02:00
Ted John
71a2cb46d2 Fix ToUpper tests on Windows
LCMapStringEx does not unfold ligatures if there is no uppercase equivalent.
2018-05-22 17:37:07 +02:00
Aaron van Geffen
bf1fd997d0 Do not require ICU on MinGW and MSVC targets. 2018-05-22 17:37:07 +02:00
Aaron van Geffen
4c67c0eaca Split ToUpper tests into more granular subtests. 2018-05-22 17:37:07 +02:00
Fusxfaranto
a91dd6a356 Implement ICU support for uppercasing, with tests. 2018-05-22 17:37:07 +02:00
Aaron van Geffen
ee8bf9bd4a Use ICU for converting strings to UTF-8 instead of our own tables.
Co-authored-by: Fusxfaranto <fusxfaranto@gmail.com>
2018-05-22 17:37:07 +02:00
Ted John
44764874a3 Add test for ImageImporter 2018-05-13 01:11:56 +01:00
Ted John
ad6ebd646c Remove work around in TileElement test fixture 2018-05-11 20:39:00 +01:00
Michał Janiszewski
090c444353 Destroy context in TileElementWantsFootpathConnection::TearDownTestCase
Not destroying the context might upset some compilers due to the order
of destruction of variables the context might still require.
2018-05-11 20:37:48 +01:00
Ted John
7dc170ef85 Use shared_ptr for long-life objects
Use unique_ptr and shared_ptr for IContext, IPlatformEnvironment, IUiContext, and IAudioContext.
2018-05-11 20:37:48 +01:00
Hielke Morsink
8d10bfb5a1 Add namespace closing comments 2018-05-04 22:54:43 +02:00
Ted John
6d76d76f98 Protect against bad RCT2 strings 2018-04-19 22:36:14 +01:00
Ted John
a4ee512378 Fix test data in Localisation tests 2018-04-18 13:16:20 +02:00
Ted John
1226402d6e Enable localisation tests for cmake 2018-04-18 13:16:20 +02:00
Ted John
e7fb20c283 Add tests for rct2 <-> utf8 conversions 2018-04-18 13:16:20 +02:00
Ted John
100b9cbba2 Add tests for String::Convert 2018-04-18 13:16:20 +02:00
Michał Janiszewski
4d7d7500a1 Fix CMake for test_tile_elements 2018-04-17 20:43:49 +02:00
Hielke Morsink
f661d48d90 Add tests for tile_element_wants_path_connection_towards 2018-04-17 20:43:49 +02:00
Michał Janiszewski
22c755f820 Fix tests on travis 2018-04-12 22:06:42 +02:00
Ted John
58306e8055 Set tests output directory to bin
This is the easiest way to allow the tests to use the OpenRCT2 data for msbuild.
2018-04-10 18:00:02 +01:00
Ted John
9a10de7442 Enable integration tests on CI 2018-04-10 13:28:26 +01:00
Ted John
fe3c136083 Set no graphics for integration tests 2018-04-10 13:19:48 +01:00
Michał Janiszewski
764520076f
Reduce header inclusion
* Update includes in PlatformEnvironment.cpp

* Update includes in ParkImporter.h

* Update includes of OpenRCT2.h

* Update includes in Intro.h

* Remove unused include from Input.cpp

* Update includes of Imaging.h

* Update includes in Game.h

* Update includes in Editor.h

* Update includes of Context.cpp

* Update includes in Cheats.cpp, CmdlineSprite.cpp

* Update includes of some source files

* Update includes in some cpp files

* Update includes in some cpp files

* Update includes in TextureCache.h

* Fix tests

* Update includes in Font.cpp

* Update includes in LightFX files

* Update some includes

* Fix GCC builds

* Update some includes

* Update some includes

* Update includes in FontsFamilies.*

* Update includes of Console.h

* Improve includes in Window.h

* Improve headers in Viewport.h/Window.h

* Fix MSVC build

* Fix network-less builds

* Reduce inclusion of Map.h
2018-03-13 13:14:02 +01:00
Michael Steenbeek
755add6c9a
Compile localisation folder as C++ 2018-01-06 18:32:25 +01:00
Aaron van Geffen
d768a467b7 Implement std::string variant of TrimStart; add tests.
This also makes String::TrimStart handle all-whitespace strings.
2017-12-25 00:30:21 +01:00
Aaron van Geffen
4bc2ad18c4 Trim ideographic spaces as well. 2017-12-25 00:30:21 +01:00
Aaron van Geffen
6c26009f19 Fix #6097: String::Trim wasn't taking multibyte chars into account.
Extends StringTest with multibyte tests.
NB: ストリング is a katakana transcription of 'string'.
2017-12-25 00:30:21 +01:00
Aaron van Geffen
02abdb3709 Change failing test to expect nullptr rather than "". (#6832) 2017-12-16 12:06:22 +00:00
Michael Steenbeek
1a9975d683 Compile util and cheats as C++ 2017-12-14 10:03:21 +01:00
Michael Steenbeek
6dc49d643a Compile files in base dir as C++ 2017-12-13 08:03:48 +01:00
Michael Steenbeek
171271215e Change some ride type names for clarity, fix Americanism 2017-12-08 07:59:44 +01:00
Michael Steenbeek
0ffa2b541a Use more consistent terminology and remove some Americanisms 2017-12-05 10:23:36 +01:00
Michael Steenbeek
60d8865efb Compile game.c and game.h as C++ 2017-12-05 09:10:27 +01:00
Ted John
a737848e8e Remove old C decoding functions and fix tests 2017-10-22 16:21:13 +02:00
Michał Janiszewski
69914b3078 Mark templates as static 2017-10-19 23:57:30 +02:00
Michał Janiszewski
e01cd0fd40 Use googletest with google/googletest#1045 2017-10-10 22:26:35 +02:00
Michał Janiszewski
5ab9f938a7 Update files missed in the great extern "C" cleanup of 2017 2017-09-28 23:29:16 +02:00
Michał Janiszewski
00fd18809c Move extern "C" {} blocks to headers (#6282) 2017-09-18 17:05:28 +02:00
Gymnasiast
3891b9874d Fix testpaint 2017-09-12 11:29:43 +02:00
Michał Janiszewski
ef5ad36cf5 Build RCT2 tests even when not running them 2017-08-31 11:02:25 +02:00
Richard Jenkins
71e580a58f Refactor game load functions, resolves #6011 2017-08-23 08:04:36 +02:00
Michał Janiszewski
ede8054726 Make multilaunch retest ride count after some updates 2017-08-02 23:50:49 +02:00
Michał Janiszewski
b3b2a1ece2 Improve multilaunch test to delete the load result 2017-08-02 23:50:38 +02:00
Michał Janiszewski
01271f68d8 Call game_load_init() in multilaunch test 2017-08-02 19:39:52 +02:00
Michał Janiszewski
c3dd3f193f Extend multilaunch test to perform game_logic_updates 2017-08-02 19:39:52 +02:00
Hendrik v. Raven
75275d64b7 add a warning when using system gtest
gtest upstream advices against using a globally installed gtest. Make
sure the user is aware of this.
2017-07-26 11:44:06 +02:00
Hendrik v. Raven
5b3f0454dd reformatting to match if clause
reformat the existing code to match the newly introduced indention level
2017-07-26 11:44:06 +02:00
Hendrik v. Raven
0f111de224 add SYSTEM_GTEST option to use gtest of the system
This adds a new configure option forcing the system to use googletest
installed on the system instead of downloading a version. The default
is still to download googletest.
2017-07-26 11:44:06 +02:00
Hendrik v. Raven
cfa20d2117 rename GTEST_INCLUDE_DIR to GTEST_INCLUDE_DIRS
GTEST_INCLUDE_DIRS is the name used by the CMake GTest package. This
is a preparation for the optional usage of a system installed gtest.
2017-07-26 11:44:06 +02:00
Brian Callahan
e7da549920 No -ldl on the BSDs, so make sure only Linux gets it 2017-06-25 23:28:04 +02:00
Ted John
f275e5ba9b Remove all platform.h includes from header files
System headers, particularly windows.h polute the namespace too much with macros and unwanted definitions. Do not use them in header files.
2017-06-25 18:59:56 +01:00
Michał Janiszewski
21e65934d6 Change number of launches in multilaunch test to 3
[ci skip]
2017-06-24 09:56:51 +02:00
Michał Janiszewski
6aa4722c22 Add MultiLaunch test 2017-06-24 09:56:51 +02:00
Michał Janiszewski
61d38511bc Expand tabs to spaces
This commit expands tabs to spaces (ts=4) in all the files under src/
and test/.

Until now we had two wildly different code styles with C using tabs and
new C++ using spaces. It is painful to maintain as none of the commonly
used tools support this kind of setup and in reality is needless, as we
can simply convert all the sources to spaces and have opened PRs do the
same, where needed.

Additionally, trailing whitespace has been removed.
2017-06-06 23:46:14 +02:00
Michał Janiszewski
105f353092 Fix symlink created for ride ratings test 2017-06-05 23:09:43 +02:00
Michał Janiszewski
eafd2ac7a7 Add option to force-disable RCT2 tests 2017-06-05 23:08:45 +02:00
Michał Janiszewski
c64076e17d Disable ride ratings test on CI 2017-06-05 22:51:57 +02:00
Michał Janiszewski
46e9978262 Create symlink for rides test 2017-06-05 22:46:49 +02:00
Ted John
9a619b3e0a Clean up branch 2017-06-05 17:38:14 +01:00
Ted John
38fb37c84c Enable ride ratings test for cmake 2017-06-04 00:48:45 +01:00
Ted John
0662f1630a Fix ride ratings test to work with new Context flow 2017-06-04 00:48:45 +01:00
Ted John
f2524c07b3 Add rating test data 2017-06-04 00:47:34 +01:00
Ted John
e9898ba82f Use new rating test data 2017-06-04 00:47:33 +01:00
Ted John
7ca1173bcb Fix warning 2017-06-04 00:47:33 +01:00
Ted John
b28fde6ae7 Create test data helpers 2017-06-04 00:47:33 +01:00
Ted John
cf7f1b7335 Change location of test data 2017-06-04 00:47:33 +01:00
Ted John
d65d31f632 Fix test expectations and describe ride types 2017-06-04 00:47:33 +01:00
Ted John
443e17c8fc Force rating update on each ride before testing 2017-06-04 00:47:33 +01:00
Ted John
c5306d72f7 Add ride ratings test 2017-06-04 00:47:33 +01:00
Ted John
00199051c1 Add SDL2 include to test cmake 2017-05-29 22:38:45 +02:00
Ted John
1f8f354e49 Update root cmake and enable tests 2017-05-29 22:38:44 +02:00
Ted John
23a314d4ba Convert tabs to spaces for test cmakelists 2017-05-29 22:38:44 +02:00
CraigCraig
e0b875398b Tons of spelling fixes (#5413)
[ci skip]
2017-04-30 06:39:24 +02:00
Ted John
0ec43e3611 Improve String::Split and add tests 2017-03-08 19:06:42 +00:00
Michał Janiszewski
6181d968e8 Add case insensitive test to INI tests 2017-03-06 22:28:33 +01:00
Michał Janiszewski
d610ef5447 Remove unnecessary libs from linking to tests
[ci skip]
2017-02-25 00:10:27 +01:00
Michał Janiszewski
e39444b592 Add more test cases to StringTest 2017-02-25 00:07:45 +01:00
Michał Janiszewski
62ab0e0e03 Add missing include to IniReaderTest 2017-02-25 00:07:45 +01:00
Ted John
f851198645 Fix and format test data 2017-02-24 23:01:06 +00:00
Ted John
fe2cb79d18 Use strings for test data in IniReaderTest 2017-02-24 22:57:32 +00:00
Michał Janiszewski
7d0cc83908 Add tests for untrimmed INI 2017-02-24 23:39:01 +01:00
Michał Janiszewski
5f43c37ca0 Add String test to CMake 2017-02-24 23:04:36 +01:00
Michał Janiszewski
d41293fa6b Extract common test sources into library 2017-02-24 23:04:20 +01:00
Ted John
3b341de835 Fix String::Trim and add test 2017-02-24 21:48:06 +00:00
Michał Janiszewski
84d69b797b Change type of variable used in test 2017-02-24 20:58:01 +01:00
Michał Janiszewski
58da1cde84 Make IniReader not throw while parsing invalid values 2017-02-24 20:26:49 +01:00
Michał Janiszewski
21827c91ab Extend duplicate INI tests with values 2017-02-24 20:18:30 +01:00
Michał Janiszewski
94f0b39f0f Add tests for duplicate sections 2017-02-24 20:15:15 +01:00
Michał Janiszewski
0a77374899 Move MemoryStreams in INI tests to stack 2017-02-24 19:53:23 +01:00
Michał Janiszewski
d23edb0f91 Fix INI tests for Windows' 2-byte newlines 2017-02-24 00:10:04 +01:00
Michał Janiszewski
e5d569ac6c Add INI tests to MSVC 2017-02-23 23:38:25 +01:00
Michał Janiszewski
8143be0707 Add IniReader, IniWriter tests 2017-02-23 23:37:22 +01:00
Ted John
e649e7ad4a Move creation of version string to Version.cpp 2017-02-09 17:58:19 +00:00
Ted John
3a4bc87198 Allow control of assertion behaviour
This allows tests to change the behaviour at runtime so that OpenRCT2 aborts instead of showing a message box.
2017-02-09 17:57:39 +00:00
Michał Janiszewski
99032651d2 Add BUILD_BYPRODUCTS entries to CMakeLists for googletest
This allows building tests with ninja build system
2017-01-11 12:10:40 +01:00
Ted John
b7b58817bb Rename openrct2-lib to libopenrct2 2017-01-10 17:29:03 +00:00