Commit Graph

9 Commits

Author SHA1 Message Date
Eric-Paul Ickhorn 1e2f0f164f
Rename automatic tests to unit tests
Those tests were unit tests before, they've just been renamed due to a
deeper understanding of testing practices on the authors side.
2024-09-21 20:56:23 +02:00
Eric-Paul Ickhorn a6595f584c Add automatic tests
The first automatic  tests are for the ECS and  the utilities. None of
them are testing much.
2024-09-14 09:43:42 +02:00
Eric-Paul Ickhorn 81e10aa64b Fix a bug in the UUID assigner
In the UUID assigner, malloc() was  used somewhere where it would have
been correct to use realloc().
2024-09-12 23:25:00 +02:00
Eric-Paul Ickhorn 0408d19a72 Fix pool allocator
The pool allocator would only allocate one item and then stop, its
allocation wasn't reset correctly because of a comparison operator
being the wrong way around.
2024-09-11 11:40:58 +02:00
Eric-Paul Ickhorn da3ce2dde9 Add (unsigned, signed) integer vectors
Those vectors are needed for storing a position  that is only on fixed
points on a grid. The  position and size of a window must be expressed
as integer vectors, for example.
2024-09-09 21:31:49 +02:00
Eric-Paul Ickhorn 6644a59270 Add INI parser
The ini parser will come in handy for configurations, for example once
the time has come for adding shader packs.

The parser isn't tested yet; writing some (automatic) tests would be a
really good idea.
2024-09-09 05:49:48 +02:00
Eric-Paul Ickhorn c3fb07b871
Add first utilities
The utilities are grouped into the following categories:

- Math
  Matrices, vectors and special rounding functions are included in the
  math category. This still is severely lacking in functionality.

- Containers
  Datatypes for  storing arbitrary data in a  special way, for example
  for being able to search  through it quickly, in the  case of a map.
  Currently the only function in this category is for testing how long
  a string is, with a maximum number of bytes to check.

- Allocation
  Special-purpose memory allocators with restrictions on what they can
  allocate. The restrictions are used to be faster in those use cases.

- UUID
  Universally-unique  identifiers are  used to  identify one  specific
  object within the engine's lifetime.
2024-09-08 17:12:42 +02:00
Eric-Paul Ickhorn 004f089cf0
Modify build-script include folder keys
The key for getting the path of  the own module in the includes.txt is
no  longer '{self}', but rather '{module}', as that is a little easier
to understand.
2024-09-08 16:45:20 +02:00
Eric-Paul Ickhorn f40ba7f27e
Add module skeletons
The "skeletons" of the modules contain a README explaining what it is
about and an includes.txt which is used by the build-script.
2024-09-07 22:11:10 +02:00