]> infiniteadaptability.org Git - events/commitdiff
tests: rework to allow parallelization
authoralex <[email protected]>
Sun, 14 Dec 2025 07:58:09 +0000 (23:58 -0800)
committeralex <[email protected]>
Sun, 14 Dec 2025 07:58:09 +0000 (23:58 -0800)
inc/add.h
inc/postpone.h
test/unit/add.tests.c
test/unit/file.tests.c
test/unit/ls.tests.c
test/unit/test_utils.c
test/unit/test_utils.h

index 41148fd75b1aab3bc6435aa21faead94f5def82b..afe6f6b88751e5989452a843a92749e44bf16804 100644 (file)
--- a/inc/add.h
+++ b/inc/add.h
@@ -13,7 +13,7 @@
 #include<opt.h>
 #include<usage.h>
 
-int add();
+int add(int, char**);
 int add_to_file(struct event*);
 
 #endif
index daa5129b6cb38bb87239cc4bb53df0140a4afe5e..f6d80c2ded4b6da63dea65a83b02222f69680e07 100644 (file)
@@ -9,6 +9,6 @@
 #include<event.h>
 #include<usage.h>
 
-int postpone();
+int postpone(int, char**);
 
 #endif
index 14db545bb8acac6a5aa9b2e5cd3b9c76c8eac925..20b93ba6b9d411dd8f3e4dc3ff71a1b1c9be62f5 100644 (file)
@@ -203,7 +203,8 @@ static void handle_args_basic_test() {
        assert(handle_args(5,args_with_place,&ev)==1);
        assert(strcmp(ev.name,"event")==0);
        assert(strcmp(ev.place,"place")==0);
-       assert(mktime(&(ev.datetime))==1641024000);
+       time_t got = mktime(&(ev.datetime));
+       assert(1641024000==got);
 
        char *args[] = {
                "ev",
index aafb68711ca9535b1b9b8721fee75fcccd5f084a..5b41a05c297f5579b4e281d6f5224b6faf04e5fe 100644 (file)
@@ -29,6 +29,9 @@ int main() {
 static void file_open_basic_test() {
        FILE *fp;
 
+       /* This already exists because of setup_env() */
+       assert(remove(global_options.file)==0);
+
        char tempfile[] = "/tmp/XXXXXX";
        fp = file_temp(tempfile);
        assert(fp!=NULL);
index 951947a5a279c768d7dc31bfbc5d0bba8758c7b3..ce01cfb1cf34a5fc9e4288be55baefdb551fb252 100644 (file)
@@ -9,9 +9,13 @@ static void event_print_basic_test();
 static void event_print_timezone_test();
 
 int main() {
+       setup_env();
+
        event_print_basic_test();
        event_print_timezone_test();
 
+       clean_env();
+
        return EXIT_SUCCESS;
 }
 
index 4f188a1bb32d6b4aca577a07991895f27db06003..3389d391baf22f6522f03cf4ecef0e6be0b3ac0b 100644 (file)
@@ -2,33 +2,34 @@
 
 struct options global_options;
 
-static const char default_file[] = "/tmp/events.test";
-
 void clean_env() {
-       reset_env();
+       if(access(global_options.file, F_OK)==0) {
+               assert(remove(global_options.file)==0);
+       }
 
-       free(global_options.file);
+       if(global_options.file!=NULL) { free(global_options.file); }
 }
 
 void reset_env() {
-       if(access(default_file, F_OK)==0) {
-               assert(remove(default_file)==0);
-       }
-
-       if(global_options.file!=NULL) { free(global_options.file); }
+       clean_env();
 
        opt_global_init();
 
-       global_options.file = strdup(default_file);
-       assert(global_options.file!=NULL);
+       setup_env();
 }
 
 void setup_env() {
-       assert(setenv("TZ",":America/Los_Angeles",1)==0);
+       char file_template[] = "/tmp/eventsXXXXXX";
+
+       assert(setenv("TZ","America/Los_Angeles",1)==0);
        tzset();
 
        srand(time(NULL));
 
-       global_options.file = strdup(default_file);
+       int fd = mkstemp(file_template);
+       assert(fd>=0);
+       assert(0==close(fd));
+
+       global_options.file = strdup(file_template);
        assert(global_options.file!=NULL);
 }
index c15d177df4da59e858c7d55e907b308abd4c0b72..e05e64da78ad16c33b4c9eea37777fce679ee014 100644 (file)
@@ -1,6 +1,7 @@
 #ifndef __TEST_UTILS_H_
 #define __TEST_UTILS_H_
 
+#include<stdlib.h>
 #include<unistd.h>
 
 #include<test_macros.h>