Matt
17918d2f6b
Remove replays
2019-07-14 16:45:55 +02:00
Ted John
6f0298deb3
Refactor ride measurement storage
2019-06-09 11:55:41 +02:00
Gymnasiast
f0f09c7f6b
Fix tests
2019-05-28 16:50:08 +01:00
Tom Lankhorst
ed353faccf
Implement replace_if condition lambda
...
Fix include typo and CS
2019-05-11 13:54:16 +01:00
Tom Lankhorst
744f2225ed
Write platform tests
2019-05-11 13:54:16 +01:00
Gymnasiast
17ddd451db
Fix tests, fix formatting
2019-05-07 20:04:07 +02:00
NexGenration
e6c88a05db
Make peep generate a static member function
2019-05-07 19:34:50 +02:00
Michael Steenbeek
5a906b2378
Port more functions to Ride struct ( #9119 )
2019-04-20 22:22:39 +02:00
Michael Steenbeek
42a1a8704d
Use empty() for vectors; clean up bool comparisons ( #9118 )
2019-04-20 20:39:47 +02:00
Matt
37c3809744
Implement partial multicore rendering
2019-03-31 15:50:55 +02:00
Duncan
9c4430736d
Use get track element ( #8884 )
...
* Use get_track_element and change its return type
* Make things work
* Use helper functions where possible
2019-03-16 11:21:36 +00:00
Matt
15838861cd
Add load and save test.
2019-03-02 13:11:08 +01:00
Ted John
cdec457abd
Refactor peep struct
2019-02-28 20:28:58 +01:00
duncanspumpkin
9d78bb0d4e
Fix compile and formating
2019-02-27 10:54:08 +00:00
duncanspumpkin
eb9ecea92e
Add IsGhost to the testpaint calls
2019-02-26 08:50:04 +00:00
Matt
c631177877
[ci skip] Add bpb.sv6 to the replays with 7000 ticks.
2019-02-16 09:09:51 +01:00
Michał Janiszewski
5e74f7487d
Merge pull request #8700 from janisozaur/icc-fixes
...
Icc fixes
2019-02-10 12:21:33 +01:00
ζeh Matt
20989ae4d8
Merge pull request #8675 from tomlankhorst/compress-replays
...
.sv6r version 2: introducing compression
2019-02-10 11:01:26 +01:00
Michał Janiszewski
5faf2d393b
Fix ride_type_has_flag signature for testpaint
2019-02-10 00:32:46 +01:00
Michał Janiszewski
2f16ad164d
Merge pull request #8671 from tomlankhorst/cmake-link-with-platform
...
Link targets with platform specific libs
2019-02-07 23:40:46 +01:00
Matt
598ea08529
Update copyright.
2019-02-07 18:50:58 +01:00
Matt
49a6ae7894
Add CircularBuffer test.
2019-02-07 18:50:58 +01:00
Tom Lankhorst
756b52186e
Normalised and upgraded all replays
2019-02-06 10:24:10 +01:00
Tom Lankhorst
94758bccf6
Link with platform libraries
2019-02-05 20:17:14 +01:00
Michał Janiszewski
6bdbe248fd
Merge pull request #8641 from tomlankhorst/use-lto
...
Detect availability of LTO, apply when available
2019-02-04 00:06:37 +01:00
Tom Lankhorst
ce6e08c633
Introduce SET_CHECK_CXX_FLAGS
2019-02-03 23:32:51 +01:00
Tom Lankhorst
6a42a95495
Refactor random engine
...
Introduce RotateEngine and Rct2Engine, FixedSeedSequence and Rct2Seed.
Adhere respectively to requirements `RandomNumberEngine` and `SeedSequence`.
Can be used with C++11 adaptors and distributions in <random>.
2019-02-01 14:32:04 +01:00
Tom Lankhorst
22fac20907
Include ICU include dirs in testpaint ( #8622 )
...
`testpaint` uses ICU headers, so add the ICU_INCLUDE_DIR to the target.
2019-01-23 14:30:49 +01:00
Gymnasiast
74a3674e86
Replace more hardcoded instances of RIDE_ID_NULL
2019-01-12 12:38:23 +01:00
Ted John
8701286772
Use new ride_id_t typedef ( #8561 )
2019-01-12 10:11:55 +00:00
Matt
b01c93ba4c
Normalise replays.
2019-01-07 09:04:51 +01:00
Michael Steenbeek
31298bd772
Merge pull request #8543 from IntelOrca/refactor-ride
...
Refactor ride structure
2019-01-02 22:38:20 +01:00
Michał Janiszewski
37535f4642
Release ImageImporter'd buffer after the test is done
2019-01-02 20:14:28 +01:00
Richard Fine
cec457fbf1
Reformat
2019-01-02 14:12:51 +00:00
Richard Fine
315ea057fe
Verify that peeps stay on paths
...
As per PR recommendation, confirm that a peep is still on the footpath for every step of the pathfinding tests.
2019-01-02 14:12:51 +00:00
Richard Fine
bb4e79ddda
Rework tests to use ride entrances as path targets
...
It turns out that trying to just give a peep a pathfinding goal and then let them loose doesn't work, because every time they reach a junction, the pathfinder has them walk 'aimlessly' instead of pursuing their target. That's why we were seeing some very large step counts in previous tests - they were (eventually) walking onto the target square, but only after lots of wandering around in circles.
This commit reworks the test data to contain an actual ride for each test scenario, where the peep will path to the tile in front of the ride entrance. A nice side benefit of this is that the ride names must match the test names, so you can now tell from looking at the rides in the test data which one is used for which test instance.
The 'yellow marker' tiles for goal positions are also removed here, as we're deriving goal positions from the ride entrances instead.
2019-01-02 14:12:51 +00:00
Richard Fine
c8c1abd10a
Reformat
2019-01-02 14:12:51 +00:00
Richard Fine
a20c8d61be
Call core_init instead of bitcount_init
2019-01-02 14:12:51 +00:00
Richard Fine
280a0c61e4
Rename maxSteps to expectedSteps
...
To make it a little clearer what the parameter is for, rename FindPath::maxSteps to FindPath::expectedSteps, and extend the comment to describe what happens in negative test scenarios.
2019-01-02 14:12:51 +00:00
Richard Fine
357ee293f3
Remove default value for SimplePathfindingScenario steps
...
Remove the default value as it's more consistent to just always have the test case specify it explicitly.
2019-01-02 14:12:51 +00:00
Richard Fine
49e46f8940
Replace GetSurfaceStyleAtLocation with map_get_surface_element_at
...
There exists a helper function map_get_surface_element_at which already searches a tile's element list for the surface element, so we can just use that.
2019-01-02 14:12:51 +00:00
Michał Janiszewski
f4685f7b94
Add Pathfinding test to CMake
2019-01-02 14:12:51 +00:00
Richard Fine
8fb81a2d89
Initial data-driven tests for pathfinder behaviour
...
Introduce some basic scenario-style tests for the pathfinding AI. There
are two tests:
* Test that a peep can get from a given start position to a given end
position, and that it takes them an expected number of ticks to do so.
Also test that they did not walk on any 'forbidden' tiles in the process,
e.g. tiles that are completely the wrong direction from the goal etc.
* Test that a peep can *not* get from a given start position to a given
end position after a given number of ticks.
Each test is parametric, and instantiated for multiple different
start/end positions within the provided test park. If we find a new
situation that needs a test, it should just be a matter of building
that situation in the saved game and then adding a line to the code to
set it up.
Indicating 'forbidden' tiles is done using terrain surface type IDs:
tiles that the pathfinder should never send the peep into should be
painted with the red neon surface type (index 8). This means we have
no way to forbid some path elements on a tile while allowing others,
but we don't need that right now.
Similarly, to help ensure that the test data and code are kept in
sync, the tests also require that peep start tiles are painted with
the green neon surface type (index 11) and that goal tiles are
painted with the yellow neon surface type (index 9).
2019-01-02 14:12:08 +00:00
Matt
045e72e863
Add more replays to test.
2019-01-02 08:30:33 +01:00
Matt
8615690891
Fix timestamp not being stored.
2019-01-02 05:36:31 +01:00
Ted John
37f76d1687
Move station fields into new station struct
2019-01-01 02:26:14 +00:00
Matt
8721bef807
Fix TileElementWantsFootpathConnection test not releasing context.
2018-12-30 12:24:41 +01:00
Matt
f868c23077
Update replay.
2018-12-30 00:07:39 +01:00
Matt
0ba42d6899
Fix TileElementWantsFootpathConnection test not releasing context.
2018-12-29 22:58:33 +01:00
Matt
5497036f01
Add missing static keyword.
2018-12-29 19:23:28 +01:00
Matt
871a24c410
Rename replay file.
2018-12-29 19:23:28 +01:00
Matt
0a62938e42
Pretty print the test parameter.
2018-12-29 19:23:28 +01:00
Matt
711d93cb30
Update replay test.
2018-12-29 19:23:27 +01:00
Matt
5cfc06573e
Ignore replay test when network is disabled.
2018-12-29 19:23:27 +01:00
Matt
ccc3227113
Cleanup.
2018-12-29 19:23:27 +01:00
Matt
669fbd62dd
Add missing source file.
2018-12-29 19:23:27 +01:00
Matt
017f190a52
Add basic regression tests via the replay system.
2018-12-29 19:23:27 +01:00
Michał Janiszewski
05ede45b8e
Fix ICU include dirs for tests ( #8499 )
2018-12-19 23:31:24 +01:00
Ted John
06f203a7e7
Implement surfaces, edges and stations as objects
2018-12-09 23:30:40 +00:00
Matt
468d94a6ca
Remove gCurrentViewportFlags
2018-12-05 23:09:17 +01:00
Hielke Morsink
354d973a48
Use std::size instead of Util::CountOf
2018-11-23 21:59:08 +01:00
Felix Pelletier
0cd7f1e07c
Fix #8142 : Reliability of unbreakable rides can go below 100%
2018-11-02 09:04:27 +01:00
Michael Steenbeek
f8add7f62e
Rename rct_tile_element to TileElement
2018-11-01 13:53:50 +01:00
Michael Steenbeek
d89c3d9e67
Replace calls to get path edges
...
This replaces most calls/direct access to the footpath edges (i.e. the orthogonal directions, not the corners). This includes places where the whole byte was retrieved, but only compared against orthogonal directions.
2018-10-31 15:08:06 +01:00
Ted John
211bd84cc3
Merge pull request #7806 from Gymnasiast/feature/rtl-rendering
...
Fix RTL text rendering for Linux / macOS
2018-10-16 22:26:45 +01:00
Gymnasiast
37f59e17dc
Replace C-style isSloped() function
2018-10-04 12:13:17 +02:00
Michael Steenbeek
28d302d653
Remove more direct access to TileElement->type
2018-10-03 12:31:02 +02:00
Gymnasiast
eae09ea16d
Attempt at fixing language pack test
2018-10-01 19:34:09 +02:00
Michael Steenbeek
ce13d1b961
Fix tests
2018-09-27 22:15:04 +02:00
Gymnasiast
5d22166fc3
Fix TestPaint
2018-09-25 21:57:21 +02:00
Gymnasiast
eecf465e3b
Fix formatting
2018-09-25 21:57:21 +02:00
Michael Steenbeek
5047d326a6
Copy new struct methods to TestPaint compat
2018-09-25 21:57:21 +02:00
Michael Steenbeek
3f17782692
Move direct access to maze entry to struct methods
2018-09-25 21:57:21 +02:00
Michael Steenbeek
75b5c45a97
Remove residual direct access to most track fields
2018-09-25 21:57:21 +02:00
Michael Steenbeek
104d4f2f58
Move photo functions to struct methods
2018-09-25 21:57:21 +02:00
Michael Steenbeek
897a2982a0
Move brake/booster speed functions to struct methods
2018-09-25 21:57:21 +02:00
Michael Steenbeek
e6d5638815
Move inverted() functions to struct methods
2018-09-25 21:57:21 +02:00
Michael Steenbeek
0cea008c18
Move cable lift functions to struct methods
2018-09-25 21:57:21 +02:00
Michael Steenbeek
69f02400f9
Move GetColourScheme to struct methods
2018-09-25 21:57:21 +02:00
Michael Steenbeek
650971bc68
Move HasChain to struct methods
2018-09-25 21:57:21 +02:00
Gymnasiast
67d7d5c022
Move getting station index to struct methods
2018-09-25 21:57:21 +02:00
Gymnasiast
ae4c464ce7
Move getting track sequence to struct methods
2018-09-25 21:57:21 +02:00
Gymnasiast
8908f3f47e
Move getting track type to struct methods
2018-09-25 21:57:21 +02:00
Gymnasiast
e20ba5d4a3
Add missing stuff to TestPaint
2018-09-16 21:34:51 +02:00
Gymnasiast
e6dd093218
Remove unused function from Testpaint compat
2018-09-16 21:34:51 +02:00
Michael Steenbeek
1d3baef9b7
Remove some C-style tile element functions
2018-09-16 21:34:04 +02:00
Michał Janiszewski
92b556352b
Allow compilation of testpaint on non-x86 targets ( #7989 )
...
This will enable compilation of testpaint on targets different than x86.
It won't function the way it does on x86, but it should provide a way of
tackling various compilation errors that can only be seen in the very
specific environment required by testpaint proper.
2018-09-15 23:37:45 +02:00
Gymnasiast
d0f4b45bd2
Fix Testpaint
2018-09-13 20:14:44 +02:00
Ted John
7faa4e06e0
Update gtest to latest snapshot ( #7950 )
...
This fixes issues when building with MSVC 15.8.
2018-08-30 10:10:36 +02:00
Hielke Morsink
0b03464186
Replace 0 and NULL with nullptr ( #7827 )
2018-07-25 22:49:20 +02:00
clang-format
7eafeaa971
Apply clang-format changes to tests
2018-07-23 16:00:23 +02:00
Hielke Morsink
6fd9843dc3
Add trailing commas and clang-format comments to tests
2018-07-23 16:00:14 +02:00
clang-format
42fa1b0f63
clang-format tests
2018-07-23 15:58:01 +02:00
Michael Steenbeek
fae7c61f05
Fix config read/write
2018-06-20 17:56:57 +02:00
Michael Steenbeek
57ab1bb2e9
Fix failing test
2018-06-20 17:55:17 +02:00
Michael Steenbeek
1b08fb4e69
Replace our own integer types with standard ones
2018-06-20 17:30:40 +02:00
Hielke Morsink
0cf256ac9e
Ready copyright notice for clang-format
...
Clang-format sees the text behind `#pragma region` as code and formats it. Instead of stating the copyright and date there, it's now in the comment block right below it. The text "Copyright" is left in the `#pragma region` line, as clang-format sees it as a single identifier.
I took the opportunity to normalize the dates, and add the copyright notice to the source files where it was missing them (except for third-party and the generated resources.h file).
2018-06-15 14:07:34 +02:00
Hielke Morsink
de3cab59bb
Fix warnings reported by travis
2018-06-05 16:07:54 +02:00
Ted John
f325568a97
Fix non-network builds
2018-06-01 22:47:29 +01:00
Ted John
ae81af7965
Fix Linux
2018-06-01 21:28:27 +01:00
Ted John
65f0fbdf78
Add test data for crypt tests
2018-06-01 21:27:34 +01:00
Ted John
72293f2208
Implement new Crypt code and remove CNG for now
2018-06-01 21:27:34 +01:00
Ted John
b8d37548ed
Implement PEM writing for CNG implementation
2018-06-01 21:27:34 +01:00
Ted John
9467438c1c
Implement PEM reading for CNG implementation
2018-06-01 21:27:34 +01:00
Ted John
9e214258c3
Finish OpenSSL RSA implementation
2018-06-01 21:27:33 +01:00
Ted John
865bfb7b1b
Refactor implementations to different files
2018-06-01 21:27:33 +01:00
Ted John
966032a047
Add test for two digests with same hash object
2018-06-01 21:27:33 +01:00
Ted John
b149c1c4ca
Add unit tests for SHA1 hashing
2018-06-01 21:27:33 +01:00
Ted John
92f6ac7333
Rename header files to match renamed source files
2018-06-01 09:38:30 +02:00
Michał Janiszewski
ce3b210e6b
Fix testpaint build
2018-06-01 09:37:49 +02: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
Michael Steenbeek
8d8820016c
Fix Testpaint
2018-05-24 13:13:51 +02:00
Aaron van Geffen
b836ad050d
Rewrite CodePageFromUTF8 as CodePageFromUnicode.
2018-05-22 19:51:34 +02:00
Aaron van Geffen
6f9226aee3
Fix testpaint.
2018-05-22 17:37:07 +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
ζeh Matt
ee56021067
Minor code cleanup. ( #7538 )
2018-05-18 22:50:57 +02:00
Aaron van Geffen
19442eb6c2
Merge pull request #7510 from Broxzier/feature/horizontal-clipping
...
Horizontal Clipping
2018-05-15 14:55:05 +02:00
Hielke Morsink
7f4663ffb8
Fix test-paint build
2018-05-15 12:55:29 +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
Michael Steenbeek
ffa73981ac
Copy CoordsDirectionDelta to Testpaint
2018-05-05 11:42:49 +01:00
Michael Steenbeek
eb0a73cf96
Fix TileDirectionDelta definition in TestPaint
2018-05-05 11:42:48 +01:00
Hielke Morsink
8d10bfb5a1
Add namespace closing comments
2018-05-04 22:54:43 +02:00
Michael Steenbeek
5f9d40be7a
Replace tile_element_get_type() with struct method
2018-05-02 19:27:04 +02:00
Michael Steenbeek
ef433df26a
Clean up tile element usage, introduce struct methods
2018-05-02 11:58:12 +02:00
Gymnasiast
fd4df87a8d
Fix TestPaint
2018-05-01 20:38:57 +02:00
Michał Janiszewski
9caa30f846
Fix TestPaint target
...
Adds missing files to target
2018-04-28 02:38:07 +02:00
Ted John
42f46d15e3
Merge pull request #7414 from OpenRCT2/refactor/string-conversions
...
Refactor string conversion between RCT2 and UTF8
2018-04-25 10:14:39 +01:00
Hielke Morsink
30063984e6
Delete unused function arguments or mark them so ( #7426 )
...
This aims to make future refactoring easier. The arguments are removed where possible, but kept and marked with C++17's [[maybe_unused]] where they could not be removed (e.g. when they are used as a callback, rather than called directly).
I've skipped the rides/<category>/* and peep/* source files, because the rides source files are mostly generated and have a ton of unused variables, and the peep source files are being refactored.
I've also skipped most of window/* source files, because most of the functions are used as callbacks and will be bulk-renamed at some point.
2018-04-20 13:56:37 +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
67f74119cf
Fix missing headers
2018-03-20 00:27:58 +01:00
Michał Janiszewski
f1ab13f56e
Fix sorting and missed floor() usage
2018-03-18 23:29:13 +01:00
Michał Janiszewski
28391eaf5d
Move cstring out of common.h
2018-03-18 23:29:13 +01:00
Michał Janiszewski
f3bdc431e1
Add lost headers
2018-03-18 23:29:13 +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
1fa2fa8f80
Refactor ride->entrances and ride->exits
2018-03-07 19:10:50 +01:00
Aaron van Geffen
c1784b21cc
Pass currentRotation to gPaintSession in TestPaint.
2018-02-17 13:11:07 +01:00
Michał Janiszewski
28a91acbfe
TestPaint fixes
2018-02-17 13:11:07 +01:00
Michael Steenbeek
bde913ee16
Rename SmallCoords and BigCoords
2018-02-15 22:26:50 +01:00
Michael Steenbeek
ca5a1e1f34
Testpaint and MSVC fixes
2018-02-15 22:26:50 +01:00
Hielke Morsink
55979a3fff
Remove and replace C typedefs
...
`typedef struct/union/enum name { ... } name_again;` is not needed whe compiling C++, moving the name at the back to be in front of the object and removing `typedef` makes it usable the very same way.
This also replaces typedefs with the using keyword. They have better readability, especially for function pointer types, and would allow more flexibility when used with templates.
2018-02-14 09:42:26 +01:00
Michał Janiszewski
c672e6098c
Fix testpaint
2018-02-12 16:03:20 +01:00
Michał Janiszewski
3f76bd214f
Const all the painted tile elements
...
Extracted from https://github.com/OpenRCT2/OpenRCT2/pull/7036
2018-02-12 16:03:20 +01:00
Gymnasiast
36bc1f816c
Clean up C bits from Testpaint
2018-02-01 13:42:46 +01:00
Gymnasiast
5cc21fd21b
Replace NULL with nullptr in C++ files
2018-01-29 21:33:21 +00:00
Michał Janiszewski
c8048df5a6
Rename header files for testpaint
2018-01-11 16:29:52 +01:00
Michael Steenbeek
9a3e85f4f9
Fix Xcode
2018-01-11 16:29:52 +01:00
Michał Janiszewski
f817bf8483
Rename hook.c to Hook.cpp
2018-01-11 16:29:52 +01:00
Michał Janiszewski
a2aa8a0fb0
Rename compat.c to Compat.cpp
2018-01-11 16:29:52 +01:00
Michał Janiszewski
13ab77fe30
Rename addresses.c to Addresses.cpp
2018-01-11 16:29:52 +01:00
Michał Janiszewski
6951bf11f2
Rename data.c to Data.cpp
2018-01-11 16:29:52 +01:00
Michael Steenbeek
cd5a1ba888
Compile files in world folder as C++
2018-01-11 13:25:09 +01:00
Michał Janiszewski
5e72d7423a
Update testpaint
2018-01-11 09:30:09 +01:00
Michał Janiszewski
eba2119a81
Update testpaint
2018-01-11 09:30:09 +01:00
Michał Janiszewski
70505f4fa0
Refactor track_paint to C++
2018-01-11 09:30:09 +01:00
Michał Janiszewski
82dfde4419
Refactor ride_data to C++
2018-01-11 09:30:09 +01:00
Michael Steenbeek
6a88d6e04d
Move and rename RCT{1,2,12}.h
2018-01-09 13:36:41 +01:00
Ted John
f18595a1c1
Refactor viewport.c to C++
2018-01-07 12:39:58 +01:00
Ted John
630a5065db
Refactor colour.c to C++
2018-01-07 12:39:58 +01:00
Michael Steenbeek
755add6c9a
Compile localisation folder as C++
2018-01-06 18:32:25 +01:00
Ted John
3dcbebcf68
Refactor drawing.c to C++
2018-01-05 22:57:57 +01:00
Michał Janiszewski
c7417e11a4
Use bool
type for boolean logic
2018-01-04 15:40:52 +01:00
Michael Steenbeek
91589f57c6
Compile map.c as C++
2018-01-03 20:40:51 +01:00
Hielke Morsink
eb4a8924d1
Refactor and clean up footpath-related code
...
This commit corrects some misused defines, and gave them clearer names.
For example, the slope mask was only useful for surface elements, so now
"SURFACE" is in its name. I also replaced any hard coded values that I
could find and knew their purpose off.
2018-01-03 10:57:37 +01:00
Michael Steenbeek
347ff702d0
Refactor objects
2018-01-03 10:16:51 +01:00
Gymnasiast
23d70a4ac9
Compile ride.c as C++
2017-12-31 20:43:17 +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
Michael Steenbeek
c4f44e5e7a
Compile files in paint folder as C++
2017-12-17 17:24:36 +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
e879df31e8
Fix testpaint code issues
2017-12-04 19:49:12 +00:00
Ted John
c30739daff
Use rct2_ride
2017-12-04 19:04:07 +00:00
Ted John
ec6099f9f4
Name / define RCT2 addresses
2017-12-04 19:04:07 +00:00
Ted John
ebf43c2529
Fix testpaint
2017-12-04 19:04:07 +00:00
Michael Steenbeek
bf69b2e682
Make terminology use more consistent
2017-11-20 11:20:04 +01:00
Michael Steenbeek
268851aa87
Fix testpaint
2017-11-17 12:54:47 +01:00
Michael Steenbeek
99830ed069
Add track_cable_lift functions to compat.c
2017-11-17 12:54:47 +01:00
Michael Steenbeek
a5dee3a0ae
Add track_element_[sg]et_type to compat.c
2017-11-17 12:54:47 +01:00
Michael Steenbeek
60d5d5ca1e
Cleanup
2017-11-17 12:54:47 +01:00
Michael Steenbeek
f448d16707
Add methods for getting and setting track element type
2017-11-17 12:54:47 +01:00
Michael Steenbeek
5a7ace134f
Apply changes to Testpaint
2017-11-17 12:54:47 +01:00
Christian F. Coors
06afeeda9a
Apply some refactoring
2017-11-02 12:22:28 +01:00
Michael Steenbeek
af845beb61
Replace mapElement with tileElement
2017-10-31 19:59:06 +01:00
Michael Steenbeek
ce8d9cc71b
Rename map_element to tile_element
2017-10-31 19:59:06 +01:00
Michał Janiszewski
a70a1bc523
Compile track_data_old as C++
2017-10-25 23:53:47 +02:00
Michał Janiszewski
90a14205c8
Compile track_data.c as C++
2017-10-25 23:53:47 +02: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
Michael Steenbeek
bb01699b7d
Compile track.c as C++
2017-10-17 13:51:47 +02:00
Tomas Dittmann
e393ff1f22
Stop using (void*)-1 for invalid pointers
2017-10-15 15:53:16 +02:00
Michael Steenbeek
7f9c25a7a9
Use constant for LOCATION_NULL, split off location stuff to Location.h
2017-10-13 22:23:07 +02:00
Michael Steenbeek
3a9dc3f491
Ensure that get_ride_entry returns NULL on invalid ride entries
2017-10-12 21:07:35 +02:00
Michał Janiszewski
e01cd0fd40
Use googletest with google/googletest#1045
2017-10-10 22:26:35 +02:00
Michał Janiszewski
0c92619350
Fix testpaint CMakeLists.txt
2017-10-09 15:24:22 +02:00
Michael Steenbeek
055ecccf36
Clean up more track flags
2017-10-04 17:14:53 +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
Ted John
3a9cafd2f0
Remove gTrackColours macro ( #6266 )
2017-09-12 19:48:18 +01:00
Gymnasiast
3891b9874d
Fix testpaint
2017-09-12 11:29:43 +02:00
Gymnasiast
a28509e24c
Split Ride and rct2_ride
2017-09-12 11:16:57 +02:00
Ted John
ef84f6283d
Fix testpaint
2017-09-03 02:59:14 +01:00
Ted John
43c6f7fda0
Pass paint session to ps functions
2017-09-03 02:27:07 +01:00
Ted John
f2b8cf181e
Pass paint session to remaining support functions
2017-09-03 01:56:56 +01:00
Ted John
1cc82d1cb5
Pass paint session to tunnel functions
2017-09-03 01:51:59 +01:00
Ted John
2980be0667
Pass paint session to more ps functions
2017-09-02 23:22:19 +01:00
Ted John
6b3f3ddb70
Pass paint session to scenery_paint
2017-09-02 22:44:39 +01:00
Ted John
8456639b47
Pass paint session to entrance_paint
2017-09-02 22:43:45 +01:00
Ted John
1f6f83163a
Pass paint session to fence_paint
2017-09-02 22:41:36 +01:00
Ted John
00cde34b39
Pass paint session to scenery_multiple_paint
2017-09-02 22:40:19 +01:00
Ted John
5c8700d054
Pass paint session to banner_paint
2017-09-02 22:38:26 +01:00
Ted John
4c78827c45
Pass paint session to path_paint
2017-09-02 22:31:39 +01:00
Ted John
47521335fa
Pass paint session to surface_paint
2017-09-02 22:25:45 +01:00
Ted John
4ea9ac2d07
Fix testpaint
2017-09-02 19:00:54 +01: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
Ted John
6b48f4344e
Fix #6100 : Paths don't connect to exit
...
Regression from db438a27b7
, % does not work on negative numbers.
2017-08-06 00:18:32 +01: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
Michael Steenbeek
2f3a30f22b
Fix cast to bool in map element functions
2017-08-01 13:42:50 +02:00
Gymnasiast
db438a27b7
Use map_element_get_direction in more places, create map_element_get_direction_with_offset()
2017-07-27 21:23:26 +02:00
Michael Steenbeek
46de90df86
Create map_get_water_height()
2017-07-27 17:15:56 +02:00
Michael Steenbeek
41b5e8bbca
Remove direct usage of map element track sequence field
2017-07-27 16:19:01 +02:00
Gymnasiast
d936b23072
Get and set map element station index via helper functions
2017-07-27 14:13:16 +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
Michael Steenbeek
367efa2020
Use remap flags, SPRITE_ID_PALETTE_COLOUR_1 and _2 in many more places
2017-07-20 20:56:29 +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
Gymnasiast
4059d9e8a7
Clean up boosters, ride_type_null, max rides per entry, formatting
2017-06-14 16:06:43 +02:00
Ted John
906b71796c
Remove testpaint for VS
2017-06-13 12:23:26 +01:00
Ted John
29f0372da8
Reduce SDL2 in headers
2017-06-12 19:56:32 +01: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
Michał Janiszewski
79d76759bb
Fix #5516 : Update copyrights for 2017
...
Not all files were necessarily _changed_, but all were touched, see
https://github.com/OpenRCT2/OpenRCT2/pull/4932
2017-06-01 21:55:10 +02:00
Ted John
00199051c1
Add SDL2 include to test cmake
2017-05-29 22:38:45 +02:00
Ted John
82288f92e6
Add cmake for testpaint
2017-05-29 22:38:44 +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
Gymnasiast
d4bb9c38c9
Delete unused file
2017-05-17 22:57:23 +02:00
Gymnasiast
09f0425c2f
Unify River Rafts and Splash Boats drawing code
2017-05-17 20:49:07 +02:00
Michael Steenbeek
a53b01d5b9
Remove magic numbers and Americanisms
2017-05-08 23:54:38 +02:00
CraigCraig
e0b875398b
Tons of spelling fixes ( #5413 )
...
[ci skip]
2017-04-30 06:39:24 +02:00
Gymnasiast
cc92300e3a
Load CSG1 booster sprites for the Looping and Corkscrew RC
2017-04-11 22:38:09 +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
Michał Janiszewski
4f852d1ea5
Fix testpaint target for new config
2017-02-21 07:29:06 +01:00
Ted John
8ba5db0697
Fix build for some configurations
2017-02-20 20:05:59 +00: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
zaxcav
25e57ca50d
Updated code as requested by reviewer.
...
Removed display of raw cut height value.
Changed display of cut height in METRIC/SI from 1DP to 2DP to display odd raw heights with accurate value.
Changed display of cut height in IMPERIAL to 1DP to display odd raw heights with accurate value.
2017-01-22 21:02:19 +01:00
zaxcav
e952c607cc
Add definition of gClipHeight to compat.c
2017-01-22 20:41:34 +01:00
Marijn van der Werf
2ffbbe0678
Test vertical tunnels properly
2017-01-17 23:57:53 +01:00
Michał Janiszewski
77a0c141a7
Merge pull request #5044 from janisozaur/ninja
...
Add BUILD_BYPRODUCTS entries to CMakeLists for googletest
2017-01-16 09:38:58 +01:00
Michał Janiszewski
85c6ed778b
Add overrides in TestTrack.cpp
2017-01-13 11:44:14 +01: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
Ted John
73b21b5880
Convert openrct2 to static library
2017-01-10 17:29:02 +00:00
Michael Steenbeek
1c2458b6dd
Combine drawing of the Spiral and Mini RC ( #5025 )
2017-01-09 22:09:33 +01:00
Michael Steenbeek
2b35986746
Add and use constant for number of ride types
2017-01-05 09:19:22 +01:00
Marijn van der Werf
24a0405345
Update testpaint
2017-01-04 18:28:40 +00:00
Michał Janiszewski
0d88276abe
Fix tests for new source layout
2017-01-04 18:28:39 +00:00
Ted John
a2e3f10ca1
Update VS project files
2017-01-04 18:28:37 +00:00
Michał Janiszewski
d15112dcb3
Fix broken includes in TestPaint.cpp
2016-12-28 19:07:46 +01:00
Broxzier
6c29bdbf21
CppCheck fixes
2016-12-24 13:10:03 +01:00
Marijn van der Werf
2fca2adbc1
Fix prepended wooden supports
2016-12-19 18:45:08 +01:00
Ted John
870a8fc6b6
Move addresses and hook into rct2 sub directory
2016-12-16 01:25:05 +00:00
Ted John
c8dbc24ceb
Enable all C++ features for MSVC
2016-12-16 01:19:41 +00:00
Michał Janiszewski
2e674b9202
Migrate Linux Travis-CI jobs to docker containers
2016-12-15 16:55:17 +00:00
Ted John
e9bafc2973
Refactor RCT2 interop code to new source
2016-12-11 12:16:43 +00:00
Michał Janiszewski
f9424455e7
Merge pull request janisozaur/OpenRCT2#23
...
Add msbuild / msvc / windows support for tests
2016-12-02 22:52:07 +01:00
Michał Janiszewski
3253ef7cae
Verify decoded chunk length
2016-12-02 22:12:55 +01:00
Michał Janiszewski
28098776b2
Convert tests to class + fixtures
...
This makes test data not require `extern`
2016-12-02 22:00:02 +01:00
Ted John
756e26ad45
Fix main function
2016-12-02 17:16:12 +00:00
Ted John
d26e1df21e
Automatically download googletest
2016-12-02 13:36:03 +00:00
Ted John
4ccb50409b
Add test configurations
2016-12-02 02:49:50 +00:00
Ted John
91e19c7d48
Move a lot of the common properties to a shared props file
2016-12-02 00:59:52 +00:00
Ted John
a08af1a253
Get tests to build for Windows and VS
2016-12-02 00:34:14 +00:00
Michał Janiszewski
86a336dd3d
Extend LanguagePack test with negative tests
2016-12-01 23:28:01 +01:00
Michał Janiszewski
a2d30ac405
Add multibyte LanguagePack test
2016-12-01 23:21:35 +01:00
Michał Janiszewski
e3a3cf375d
Add LanguagePackTest
2016-12-01 23:04:10 +01:00
Michał Janiszewski
729934193c
Improve tests' CMakeLists.txt
2016-12-01 16:03:27 +01:00
Michał Janiszewski
b0e5333ce6
Improve sawyercoding_test.cpp
2016-12-01 16:03:27 +01:00
Michał Janiszewski
cae3f776f3
Run tests on travis
2016-12-01 16:03:27 +01:00
Michał Janiszewski
f496fceb00
Download and compile our own gtest
2016-12-01 16:03:27 +01:00
Michał Janiszewski
be1028b20e
Add CMakeLists.txt file for tests
2016-12-01 16:03:27 +01:00
Michał Janiszewski
fdcbd583e3
Add first test for sawyercoding
2016-12-01 16:03:27 +01:00
Marijn van der Werf
15a6575346
Update hooks to return CPU flags
2016-12-01 14:15:47 +01:00
Ted John
ee0ca426b3
Allow building for both VS2015 and VS2017
2016-11-26 23:53:29 +00:00
Michał Janiszewski
3f7fd56328
Remove trailing whitespace in sources
2016-11-13 20:32:55 +01:00