I copy and paste your code into an online C++ system, and it works:
https://www.onlinegdb.com/online_c++_compiler[
^]
It compiles cleanly, it runs, and I get:
Test 0: OK
Test 1: OK
Test 2: OK
Test 3: OK
Test 4: OK
Test 5: OK
Test 6: OK
Test 7: OK
Test 8: OK
So ... we would need to know what compiler, what line, and so forth.
Alternatively, change your TestCase struct to accept const strings:
typedef struct {
const char* input;
int expected;
} TestCase;
You'll have to match that with all your function calls though or they won;t compile either!