Add unit test suite and complete protocol documentation

- Add test framework (test.h) with assertion macros and test runner
- Add comprehensive unit tests (test_network.c) covering:
  - Packet parsing and error handling
  - User registration and authentication
  - Room operations (create, join, leave, delete, list)
  - Direct messaging functionality
  - Message broadcasting
  - Password hashing
- Update Makefile with 'make test' target
- Rewrite PROTOCOL file with complete specification:
  - All 14 packet types with data layouts
  - All error codes with descriptions
  - Typical usage flows
This commit is contained in:
Lorenzo Torres 2026-01-08 15:38:28 +01:00
parent 670e38a105
commit 238eff5bb3
9 changed files with 2156 additions and 27 deletions

View file

@ -12,7 +12,7 @@ MANPREFIX = ${PREFIX}/share/man
# includes and libs
INCS = -I.
LIBS = -lssl -lcrypto -lcrypt -luv
LIBS = -lssl -lcrypto -lcrypt -luv -lsqlite3
# flags
CFLAGS := -std=c11 -pedantic -Wall -O0 ${INCS} -DVERSION=\"${VERSION}\"
CFLAGS := ${CFLAGS} -g