Dmitry Marakasov
539e6c8fd1
Constexprify even more Rect methods
2015-07-07 21:28:30 +03:00
Dmitry Marakasov
beaa9ed3b8
Constexprify more Rect methods
2015-07-07 16:27:03 +03:00
Dmitry Marakasov
4f3256fda5
Constexprify Rect constructors
2015-07-07 15:42:03 +03:00
Dmitry Marakasov
5a55e91987
Constexprify Point arith ops
2015-07-07 15:41:45 +03:00
Dmitry Marakasov
d11345b6df
Initial Point constexpr support: constructors and comparison operators
2015-07-07 05:17:09 +03:00
Dmitry Marakasov
dacf1cbf04
Update Point arith test
2015-07-03 22:23:06 +03:00
Dmitry Marakasov
a31677af6a
Disable self-assignment warning for tests
...
As we deliberately do these self-assignments. Fixes -Werror build with clang 3.6.
2015-01-30 20:07:37 +03:00
Dmitry Marakasov
ca859c83a7
Fix test
2015-01-20 03:07:09 +03:00
Dmitry Marakasov
eccb504b4f
Use more EXPECT_EQUAL when applicable
2015-01-20 03:03:12 +03:00
Dmitry Marakasov
fdcbcddc1d
Implement stream output operators for Point and Rect
2015-01-20 02:56:34 +03:00
Dmitry Marakasov
fa7ba94957
Implement Point::Wrap
2015-01-20 02:38:16 +03:00
Dmitry Marakasov
ead93d1d69
Implement Rect::IntersectLine
2015-01-19 20:18:41 +03:00
Dmitry Marakasov
14f352dddd
Implement Rect::Extend
2015-01-19 19:57:40 +03:00
Dmitry Marakasov
0de09713c9
Add mutating Union method
2015-01-19 19:51:43 +03:00
Dmitry Marakasov
9d90792378
Implement Point::Clamp(Rect)
2015-01-19 01:05:05 +03:00
Dmitry Marakasov
0f4eea5aab
Add another variant of Rect::Contains()
2015-01-08 06:53:25 +03:00
Dmitry Marakasov
5ea7b7fc89
Update Rect tests
2014-12-30 00:14:36 +03:00
Dmitry Marakasov
7506b05a77
Implement Rect::Contains(Rect), add corresponding test
2014-12-29 22:04:43 +03:00
Dmitry Marakasov
518f9fff35
Add test for multiplication/division
2014-12-29 22:00:49 +03:00
Dmitry Marakasov
e18f54d302
Add test for Point/Rect construction and comparison from/with corresponding SDL objects
2014-12-29 21:58:38 +03:00
Dmitry Marakasov
f5216c309f
Add (failing) test for #22
2014-12-27 02:06:05 +03:00
Dmitry Marakasov
65b5446fd1
Axe out remaining uses of old Point/Rect API
2014-12-25 19:30:37 +03:00
Dmitry Marakasov
6d0213810b
Switch to Optional
...
Remove "valid" flag from Rect and Point, derive them directly from
SDL_Rect and SDL_Point structures, simplify logic. Now x/y/w/h member
variables are directly accessible and Rect/Point may be passed as
SDL_Rect/SDL_Point via pointer or reference.
Change all cases where Null Rects and Points were used to Optional.
invalid state related functions like Null(), IsNull() and Get() are
now deprecated but are not removed yet for compatibility sake.
2014-12-25 19:10:41 +03:00
Dmitry Marakasov
e6b31930b6
Add test for optional
2014-12-25 17:31:14 +03:00
Dmitry Marakasov
f8c6b2a9fb
Add operators to offset a Rect by a Point
2014-12-20 18:04:28 +03:00
Dmitry Marakasov
18fe309309
Remove demos into more suitable examples
...
Also add options for conditional build of tests and examples
2014-12-20 18:04:22 +03:00
Dmitry Marakasov
ae2968e2fe
Use SDL2 seek whence flags, not ones from stdio
2014-12-20 00:21:35 +03:00
Dmitry Marakasov
ef152c2a84
Merge branch 'header-tests'
...
Conflicts:
tests/CMakeLists.txt
2014-12-18 17:30:00 +03:00
Dmitry Marakasov
b8d3b08f10
Implement fixed integer r/w methods
2014-12-18 17:24:19 +03:00
Dmitry Marakasov
6813606086
Fix build on older CMake versions
...
MAKE_C_IDENTIFIER seem to only be available on relatively new CMake
versions, so replace it with similar REGEX REPLACE.
2014-12-18 16:55:27 +03:00
Dmitry Marakasov
d7987b33da
Allow ContainerRWops to work with both const and non-const containers
...
Analogus to how StreamRWops work. Also add more tests for
ContainerRWops.
2014-12-18 16:48:48 +03:00
Dmitry Marakasov
53aa26dec5
Make StreamRWops work with istream/ostream
...
Streams do not generally work well with RWops because
* streams have separate read and write pointers
* ostream doesn't allow you to determine how many bytes were actually written
* istream and ostream have separate set of functions
Try my best to support streams in RWops though, engaging some template
magic:
* provide separate template implementations of all operations which
depend on whether stream is an istream or ostream. This allows to
e.g. return 0 immediately for an attempt to write() to istream.
* disallow StreamRWops for classes which are both istream and ostream
to not run into ambiguity of separate read/write pointers
* for read failure, but partially read object back to the stream to not
lose data for following read (not sure that e.g. fread behaves so
though; I'll anyway expect user to Seek() after read or write failure)
* for write failure, there's no way to avoid leaking partial data to the
stream
In general, it is best to use this container as read-only.
Also add tests for StreamRWops
2014-12-18 16:23:22 +03:00
Dmitry Marakasov
c5f7de0c46
Make header tests completely automatic
2014-12-18 14:54:53 +03:00
Dmitry Marakasov
7ba131a913
Add StreamRWops class
2014-12-18 14:32:27 +03:00
Dmitry Marakasov
c73bd885c5
Name header file after class it defines
2014-12-18 14:29:45 +03:00
Dmitry Marakasov
950829f234
Add Wav class
2014-11-30 00:48:08 +03:00
Dmitry Marakasov
2be68a9ebb
Add wrapper for large part of SDL2 audio functionality
2014-11-29 22:58:27 +03:00
Dmitry Marakasov
359a0e93c8
Implement Rect::Contains(Point)
2014-11-24 01:52:49 +03:00
Dmitry Marakasov
e3ad1a4ad7
Add custom RWops for use with constant containers
2014-09-05 05:23:13 +04:00
Dmitry Marakasov
5542acd252
Add tests for RWops
2014-09-05 04:54:53 +04:00
Dmitry Marakasov
1ddf04e823
Make test which depend on OpenGL behavior non-fatal
2014-09-02 07:27:16 +04:00
Dmitry Marakasov
cced165fbd
Update testing.h
2014-09-02 07:27:13 +04:00
Dmitry Marakasov
b92804536c
Make gui test result visible
2014-07-27 00:30:49 +04:00
Dmitry Marakasov
1ec8df2964
More Get() tests
2014-02-21 23:54:22 +04:00
Dmitry Marakasov
5a61a8f51b
Fix Get() for null Points and Rects, add tests for it
2014-02-21 23:46:37 +04:00
Dmitry Marakasov
8e6bf5fc2f
Add basic Point arith
2014-02-21 20:09:11 +04:00
Dmitry Marakasov
015a9e5be5
Add partial GUI test
2014-02-11 07:41:23 +04:00
Dmitry Marakasov
820813b79f
Improve testing framework, add stub for GUI tests
2014-02-11 06:15:01 +04:00
Dmitry Marakasov
f6d6572602
Fix Rect::FromCenter and add test for it
2014-02-11 06:01:36 +04:00
Dmitry Marakasov
07bf0aa3d5
Add Point and Rect tests
2014-02-11 05:51:15 +04:00