eb155d5bb0
m/fast: add some fast maths approximations
2015-07-29 16:11:48 +10:00
86b36afc49
image: add simple offset test
2015-07-23 21:19:15 +10:00
785a9e08f6
tap: remove default format strings
2015-07-21 03:17:20 +10:00
3b97f56ead
polynomial: rename solve as roots
2015-07-21 02:59:14 +10:00
74d7f9c717
vector: add {to,from}_euler
2015-07-21 02:56:37 +10:00
7396057508
vector: use TAP in tests
2015-07-21 02:55:11 +10:00
f451e5555e
format: add trivial printf wrapper
2015-07-21 01:37:45 +10:00
abf88710b4
test: use TAP on more tests
2015-07-13 16:30:54 +10:00
8840bae7b0
rational: update with more operators
2015-07-13 16:30:54 +10:00
991558fc7f
build: remove unused options code
2015-07-02 17:25:04 +10:00
536284a56d
cmdopt: add TAP testing
2015-07-02 17:03:56 +10:00
75af292340
cmdopt: transfer test cases from option tests
2015-06-30 22:24:44 +10:00
e8d3cf8eb1
maths: remove deprecated maths objects
2015-06-05 16:07:03 +10:00
fd319d579b
build: make single argument constructors explicit
2015-06-04 22:18:43 +10:00
9b548e56d9
point: convert distance member functions to functions
2015-06-01 15:29:24 +10:00
3a4fed804a
fasthash: add initial implementation
2015-05-28 12:17:25 +10:00
a61ea32228
murmurhash: add initial translation
2015-05-25 16:12:45 +10:00
054dfa918e
crypto: add XXTEA {en,de}cryption.
2015-05-15 18:27:24 +10:00
7f0c7466e4
crypto: encrypt in-place where it suits
2015-05-15 18:26:45 +10:00
ddaca2f453
XTEA: add extended TEA encryption
2015-05-07 00:18:01 +10:00
dd05d677dd
TEA: use static sized storage for tests
2015-05-07 00:17:20 +10:00
9d3c058873
TEA: add "Tiny Encryption Algorithm"
2015-05-06 23:49:45 +10:00
717644acde
arc4: add initial implementation
2015-05-06 21:38:56 +10:00
70c65c2bb2
introspection: map tuples to themselves in type_tuple
2015-05-01 02:49:19 +10:00
358f2ddb60
tuple: test tuple mapping with template src types
...
Added complexity in the test to help diagnose issues with the
introspection code.
2015-05-01 02:43:27 +10:00
7bc96bd60f
maths: explicitly instantiate PI for float, double
2015-05-01 02:42:32 +10:00
bb1e87bb47
options: don't import util and std namespaces
2015-04-30 21:03:18 +10:00
c052d7df4b
maths: use templated PI and E constants
2015-04-29 17:45:39 +10:00
33401becbd
tuple: add type mapping template
2015-04-21 14:21:01 +10:00
199be3213a
introspection: add simple static introspection types
2015-04-20 17:51:00 +10:00
fa8387252e
tuple: add tuple iteration helpers
2015-04-20 17:48:11 +10:00
e939cca6fd
ray: return NaN for negative aabb intersection
2015-04-15 14:20:59 +10:00
ffaf10de21
extent: silence unused variable warning in test
2015-04-15 14:06:30 +10:00
6f1278767f
vector: add is_normalised
2015-04-15 13:52:37 +10:00
8863ebafe9
ray: add ray-sphere intersection test
2015-04-13 21:47:51 +10:00
7e2baf6751
ray: convert test to TAP format
2015-04-13 21:47:37 +10:00
7ae57730f0
whitespace
2015-04-13 18:06:08 +10:00
bbbbb675a6
test: move tests to TAP output
2015-04-13 16:45:56 +10:00
e9c0ed3f5f
tap: use an object for logging
2015-04-13 16:43:49 +10:00
a7f96a127d
colour: add hsv/rgb conversions
2015-04-09 21:50:42 +10:00
7307d73bbc
colour: add html and x11 string lookup
2015-04-09 20:46:55 +10:00
ef4475949d
colour: specialise the cast function
2015-04-09 20:46:24 +10:00
bd88832df3
coord: move cast/redim operations to coord
2015-04-09 17:58:47 +10:00
9f6c17d6cf
maths: add renormalise function
2015-04-09 17:44:50 +10:00
afad51db9d
aabb: add expand call
2015-04-09 14:05:01 +10:00
a300f99b87
vector: add polar_to_cartesian
2015-04-02 15:01:17 +11:00
5674f2a2e9
json: add basic json-schema draft 4 support
2015-03-19 00:25:50 +11:00
4e3d67185c
rename line to ray
2015-03-11 22:31:35 +11:00
daa492ce07
signal: add return value combiners
2015-03-10 22:52:38 +11:00
2cd7ce0aca
maths: use qualified min/max functions
2015-03-07 03:21:06 +11:00
994121f2bf
line: add aabb intersection test
2015-03-07 03:20:50 +11:00
439bb19679
coord: move operators out of subclasses
2015-03-06 01:09:58 +11:00
31d1d741e9
extent/region: update to use size parameters
2015-03-03 04:13:29 +11:00
e5d99b3370
coord: use stricter member variable names
...
use tags for the core coordinate structures to specify what names should
be used for the data variables (in the data union)
2015-03-03 04:11:30 +11:00
29a148e2e5
hash/hotp: add simple HOTP implementation
2015-03-02 02:55:54 +11:00
cedcf90c3f
hash/hmac: add HMAC-SHA1 support
2015-03-02 01:21:52 +11:00
e52b8368f2
hash/hmac: add rfc 2202 test data
2015-03-02 00:41:52 +11:00
f4fe636cb0
hash/hmac: add simple HMAC-MD5
2015-03-02 00:07:50 +11:00
ebfa147cd2
line: add trivial line type
2015-02-19 13:29:16 +11:00
c8f067bf60
signal: add value wrapper signal
2015-02-19 13:29:16 +11:00
509d9a1582
matrix: remove debug print in test
2015-02-19 13:29:16 +11:00
6ac02a9920
point: add homogenous redim
2015-02-19 13:29:16 +11:00
38d3fc1961
signal: simplify unneeded signal elements
...
* use function syntax for template type
* remove non-scoped cookie
* simplify many type names
2015-02-18 02:35:05 +11:00
6bd9ad333c
region: try to use unsigned types for extent
2015-02-17 16:23:54 +11:00
ecc40f2315
build: fold test makefile into primary makefile
...
Moving the subdir makefile into the main one lets us more easily track
dependencies for reliable builds. Previously we tended to build against
old versions of the static library when running the tests.
2015-02-13 18:02:09 +11:00
331f185160
extent: add trivial validity instantiation test
2015-02-13 17:32:31 +11:00
d7e3683417
uri: check component values in unit test
2015-02-11 16:43:27 +11:00
4245785005
uri: add simple uri parser
2015-02-09 17:43:24 +11:00
81ccdcf8ef
fixed: add signed supported
2015-02-06 20:01:26 +11:00
4f19a35b7d
fixed: add trivial tests
2015-02-06 16:35:40 +11:00
9a6c4572fa
float: correctly handle double comparisons
2015-02-03 15:54:55 +11:00
3d53ee5eb1
bezier: add region query
2015-02-03 12:58:41 +11:00
e5b85b559b
point: fix float warning on test instantiation
2015-02-03 02:21:58 +11:00
60787655b3
json: split json impl files into tree and flat
2015-02-03 00:15:07 +11:00
81a7ff5db5
json: use raw string literals for test data
2015-02-02 23:02:26 +11:00
f3f969c8cb
json: rewrite test data for rfc7159 compliance
2015-02-02 23:01:57 +11:00
cfc0f8ecd0
json: move tree parsing code to json::tree
2015-02-02 21:26:56 +11:00
7a5e26ffc2
options: reset processor for each test
...
eliminates errors when CHECK macros are disabled in release builds
2015-01-30 16:46:47 +11:00
cae7a80ec1
test: move tests to flat directory structure
...
removes complications when srcpath/dstpath or child/parent directories
have naming collisions (in particular the json directories).
2015-01-30 16:45:57 +11:00
6bf011efa4
float: tighten up almost_equal tolerance
2015-01-29 15:49:57 +11:00
cf5a682959
bezier: add intersection count test
2015-01-29 15:49:57 +11:00
54cb3c2153
tap: add rudimentary TAP helpers
2015-01-29 15:49:57 +11:00
c841aadda0
float: fix negative-zero/zero almost_equal
2015-01-29 15:49:57 +11:00
52f53caee5
debug: drop support for CHECK_HARD
...
HARD vs SOFT assertions were never very well defined or supported.
Currently they just imply a level of functionality that isn't present;
it's better to remove them instead of expending the effort at this
point.
2015-01-28 14:49:34 +11:00
7934ae865b
bezier: add straight line tests for order 1-3
2015-01-22 14:57:57 +11:00
b9f38eb4a9
polynomial: use correct degree in template param
2015-01-22 14:57:38 +11:00
bd12519d94
polynomial: use newtons method after cubic solve
2015-01-22 00:27:46 +11:00
5469fdf06b
polynomial: initial degree 1-3 solvers
2015-01-21 23:40:45 +11:00
0a2d163bb1
maths: seperate float and double PI
2015-01-21 23:40:13 +11:00
fe143717c5
region: style, comments, namespacing
2015-01-21 23:40:13 +11:00
75156cedc3
colour: remove redundant rgba member variables
2015-01-15 14:03:44 +11:00
bb0271ab2b
point: add simple redim with fill test
2015-01-13 18:41:51 +11:00
f309c5dbd0
maths: add float overload of to_radians
2015-01-13 18:41:51 +11:00
7c8562407f
rand: remove narrowing cast warning in test
2014-12-16 15:29:26 +11:00
557842441f
matrix: remove unneeded cast warning in test
2014-12-16 15:28:59 +11:00
5956d0421e
parameterise point, vector, region, matrix on type
2014-12-15 20:10:56 +11:00
a198aa1cba
matrix: add trivial matrix-mul test
2014-12-15 13:32:17 +11:00
6a6933ea70
build: update test to use only static libraries
2014-12-15 13:32:17 +11:00
733f16d1c8
build: add json test data to dist
2014-10-26 18:55:24 +11:00
cf6fc87c9f
options: use range based for in some tests
2014-10-21 21:48:13 +11:00
bb3cbb584c
maths: add log2up
2014-09-17 16:41:38 +10:00
b3e72051d6
maths: fix log2
2014-09-17 16:41:19 +10:00
37ed0fc5fd
hash: cleanup fletcher
2014-09-11 15:44:03 +10:00
9bd80ab85c
test: remove indirect script for json.test
2014-09-03 18:35:28 +10:00
61ee601df1
bitwise: use lookup table for byte reverse
...
When used across large buffers an iterative reverse scheme is lesss
efficient. The small cache cost for single reverses is good enough to
just eat here.
2014-09-01 16:23:46 +10:00
34f5036616
build: ignore built matrix test
2014-08-22 19:08:34 +10:00
3ab2e8ed57
matrix: add analytical 4x4 inverse
2014-08-19 20:45:28 +10:00
c086e2c9d7
test: move maths-matrix test to maths dir
2014-08-18 22:16:50 +10:00
39617fb471
test: move maths namespace checks into own dir
2014-08-18 22:16:50 +10:00
523d5efd05
test: build tests against static libraries
2014-08-18 22:16:50 +10:00
f6894fabc8
whitespace
2014-08-18 22:16:50 +10:00
8a400f7fe9
test: add stringid to gitignore
2014-08-01 21:37:31 +10:00
226500cb83
test: hack to make json.test executable
2014-08-01 21:37:04 +10:00
aa52f440bc
test: use absolute paths for json.test
2014-05-26 17:34:23 +10:00
6cce50cd1b
Merge branch 'master' of ssh://nerdcruft.net/var/git/libgim
2014-05-26 17:11:29 +10:00
eb05c7622e
add stringid for mapping between strings and ints
2014-05-26 17:11:07 +10:00
228421d974
test: run all checks through the TAP driver
...
This will allow more natural checking of hashes and json as they expand.
2014-05-23 17:11:28 +10:00
61634286d3
hash: call finish before comparing in tests
2014-05-20 13:33:08 +10:00
5c0ac60e2f
json: use new tool path for tests
2014-05-09 13:14:13 +10:00
1b96816bd3
matrix: debug build fix for braces and defines
2014-05-09 13:13:18 +10:00
513b09c1c9
sha2: rename SHA2 class to SHA256
...
temporary rename for clarity in existing algorithm code. revisit when/if
we get implementations for each bit length.
2014-05-09 13:01:02 +10:00
a88379bf36
hash: add sha2 implementation
2014-04-16 19:17:56 +10:00
028dee034a
bitwise: add rotater
2014-04-16 19:16:25 +10:00
fc935863ef
sha1: cleanup and fix test cases
2014-04-16 18:35:09 +10:00
21b2b2368c
Increase rand test iterations
...
Sometimes we get test errors when running the rand test. Obviously this
is expected a little based on the implementation, but we can reduce the
chance by increasing the iterations for the test.
2014-04-10 21:04:56 +10:00
6074ccdd21
Remove useless extension protection from gitignore
2014-04-10 21:04:32 +10:00
b33cb706c8
Add RIPEMD160 implementation
2014-04-10 21:04:07 +10:00
9cc47a05bd
Add point::redim implementation
2014-02-18 15:28:28 +11:00
ca2493f811
Add top include path to test programs
2013-08-26 15:10:23 +10:00
e67e0329fa
Remove dependency on system netlibs for ip test
2013-08-05 21:46:31 +10:00
1fac4bff06
Simplify test case CPPFLAGS
2013-08-05 21:46:31 +10:00
a072f97ffe
Rename random test to avoid #including built test
2013-08-05 21:43:01 +10:00
bb19448ee9
Fix missing headers in tests for windows
2013-08-05 16:45:03 +10:00
0c4f9cb275
Fix headers and linking for network tests
2013-08-05 16:43:52 +10:00
8de0495b8a
Add basic randomness checks for random generators
2013-07-30 15:10:10 +10:00
d74b8ad40f
Simplify the test binary cxx/ld flag specification
...
Rather than set the flags for each binary we can use global flags for
this file and cut down on redundancy.
2013-07-30 14:25:38 +10:00
db18432f1c
Move all hash implementations to hash subdir
2013-07-13 14:40:13 +10:00
9bdc50df3c
Add SHA1 implementation
2013-03-11 20:47:48 +11:00
7099c9bc50
Add MD5 implementation
2013-03-11 20:45:53 +11:00
905a2236a2
Add MD4 implementation
2013-03-11 20:44:32 +11:00
8df03fae81
Add MD2 implementation
2013-03-11 20:43:15 +11:00
990d5ab806
Rename rotate_left to the more friendly rotatel
2013-03-11 20:41:19 +11:00
886a36ad5c
Fix floating comparison warnings in json test
2013-02-27 15:17:33 +11:00
d17f55cba8
Use unique_ptr rather than plain pointer
2013-02-27 15:10:17 +11:00
d482f1fde4
Whitespace and minor c++11 fixups
2013-02-26 18:56:25 +11:00
0b30b56c58
Add straggling files to ignore list
2013-02-26 18:32:36 +11:00
6f4d899c0b
Imported libcmdopt option parsing
2013-02-26 18:31:14 +11:00
baf8ded43d
Add UNIT and MAX region objects
2012-06-15 16:38:57 +10:00
c0dcdd89d9
Add MAX range object
2012-06-15 16:38:24 +10:00
94189e5b58
Rename json test data to aid 'make clean'
2012-06-12 13:03:50 +10:00