From 533619c27d9cc3919bed540ea7f04bebddc71cbe Mon Sep 17 00:00:00 2001 From: xengineering Date: Tue, 29 Nov 2022 21:02:16 +0100 Subject: Add first unit test This should kick off the infrastructure for unit tests. This can still be improved but getting started is important to make it easier to add unit tests and thus improving the quality. --- Makefile | 10 ++++++++-- tests/get_domainpart.c | 23 +++++++++++++++++++++++ xmpp.h | 1 + 3 files changed, 32 insertions(+), 2 deletions(-) create mode 100644 tests/get_domainpart.c diff --git a/Makefile b/Makefile index 18bde1e..f692264 100644 --- a/Makefile +++ b/Makefile @@ -1,10 +1,16 @@ .PHONY: all clean -all: build +all: build/limox build/tests/get_domainpart + ./build/tests/get_domainpart + +build/limox: build gcc main.c gui.c xmpp.c -o build/limox -lSDL2 +build/tests/get_domainpart: build + gcc tests/get_domainpart.c xmpp.c -o build/tests/get_domainpart -I. + build: - mkdir -p build + mkdir -p build/tests clean: rm -rf build diff --git a/tests/get_domainpart.c b/tests/get_domainpart.c new file mode 100644 index 0000000..e05aee1 --- /dev/null +++ b/tests/get_domainpart.c @@ -0,0 +1,23 @@ + + +#include +#include + +#include "xmpp.h" + + +int main(void) +{ + char *input = "test@example.org/3f"; + const char *expected = "example.org"; + + char *result = get_domainpart(input); + + if (strcmp(result, expected) == 0) { + printf("Unit test passed - ok\n"); + return 0; + } else { + printf("'%s' != '%s'!\n", result, expected); + return 1; + } +} diff --git a/xmpp.h b/xmpp.h index b07e3b9..03b3dbd 100644 --- a/xmpp.h +++ b/xmpp.h @@ -1 +1,2 @@ void xmpp_connect(void); +char *get_domainpart(char *jid); -- cgit v1.2.3-70-g09d2