Laurence Lundblade | d92a616 | 2018-11-01 11:38:35 +0700 | [diff] [blame] | 1 | /*============================================================================== |
Laurence Lundblade | a3fd49f | 2019-01-21 10:16:22 -0800 | [diff] [blame] | 2 | cmd_line_mainc.c -- Runs tests for QCBOR encoder / decoder |
Laurence Lundblade | 1f8b5b0 | 2019-01-01 22:27:38 -0800 | [diff] [blame] | 3 | |
Laurence Lundblade | ee85174 | 2020-01-08 08:37:05 -0800 | [diff] [blame] | 4 | Copyright (c) 2018-2020, Laurence Lundblade. All rights reserved. |
Laurence Lundblade | 035bd78 | 2019-01-21 17:01:31 -0800 | [diff] [blame] | 5 | |
Laurence Lundblade | a3fd49f | 2019-01-21 10:16:22 -0800 | [diff] [blame] | 6 | SPDX-License-Identifier: BSD-3-Clause |
Laurence Lundblade | 035bd78 | 2019-01-21 17:01:31 -0800 | [diff] [blame] | 7 | |
Laurence Lundblade | a3fd49f | 2019-01-21 10:16:22 -0800 | [diff] [blame] | 8 | See BSD-3-Clause license in README.md |
Laurence Lundblade | 035bd78 | 2019-01-21 17:01:31 -0800 | [diff] [blame] | 9 | |
Laurence Lundblade | a3fd49f | 2019-01-21 10:16:22 -0800 | [diff] [blame] | 10 | Created on 9/13/18 |
Laurence Lundblade | ee85174 | 2020-01-08 08:37:05 -0800 | [diff] [blame] | 11 | =============================================================================*/ |
Laurence Lundblade | 1f8b5b0 | 2019-01-01 22:27:38 -0800 | [diff] [blame] | 12 | |
Laurence Lundblade | 74f6841 | 2018-09-13 12:18:49 -0700 | [diff] [blame] | 13 | #include <stdio.h> |
Laurence Lundblade | 781fd82 | 2018-10-01 09:37:52 -0700 | [diff] [blame] | 14 | #include "run_tests.h" |
Laurence Lundblade | 74f6841 | 2018-09-13 12:18:49 -0700 | [diff] [blame] | 15 | |
Laurence Lundblade | a954db9 | 2018-09-28 19:27:31 -0700 | [diff] [blame] | 16 | |
Laurence Lundblade | 1f8b5b0 | 2019-01-01 22:27:38 -0800 | [diff] [blame] | 17 | /* |
| 18 | This is an implementation of OutputStringCB built using stdio. If |
Laurence Lundblade | a3fd49f | 2019-01-21 10:16:22 -0800 | [diff] [blame] | 19 | you don't have stdio, replaces this. |
Laurence Lundblade | 1f8b5b0 | 2019-01-01 22:27:38 -0800 | [diff] [blame] | 20 | */ |
Laurence Lundblade | d396f62 | 2019-01-12 17:12:29 -0800 | [diff] [blame] | 21 | static void fputs_wrapper(const char *szString, void *pOutCtx, int bNewLine) |
Laurence Lundblade | cc2ed34 | 2018-09-22 17:29:55 -0700 | [diff] [blame] | 22 | { |
Laurence Lundblade | d396f62 | 2019-01-12 17:12:29 -0800 | [diff] [blame] | 23 | fputs(szString, (FILE *)pOutCtx); |
| 24 | if(bNewLine) { |
| 25 | fputs("\n", pOutCtx); |
| 26 | } |
Laurence Lundblade | 8ca1369 | 2018-12-04 14:35:53 +0900 | [diff] [blame] | 27 | } |
| 28 | |
| 29 | |
Laurence Lundblade | 570fab5 | 2018-10-13 18:28:27 +0800 | [diff] [blame] | 30 | int main(int argc, const char * argv[]) |
| 31 | { |
Laurence Lundblade | 1f8b5b0 | 2019-01-01 22:27:38 -0800 | [diff] [blame] | 32 | (void)argc; // Avoid unused parameter error |
Laurence Lundblade | a44d506 | 2018-10-17 18:45:12 +0530 | [diff] [blame] | 33 | |
Laurence Lundblade | 1f8b5b0 | 2019-01-01 22:27:38 -0800 | [diff] [blame] | 34 | // This call prints out sizes of data structures to remind us |
| 35 | // to keep them small. |
Laurence Lundblade | 29501b7 | 2020-01-16 15:05:18 -0800 | [diff] [blame] | 36 | PrintSizesQCBOR(&fputs_wrapper, stdout); |
Laurence Lundblade | 3aee3a3 | 2018-12-17 16:17:45 -0800 | [diff] [blame] | 37 | |
Laurence Lundblade | 1f8b5b0 | 2019-01-01 22:27:38 -0800 | [diff] [blame] | 38 | // This runs all the tests |
Laurence Lundblade | 29501b7 | 2020-01-16 15:05:18 -0800 | [diff] [blame] | 39 | return RunTestsQCBOR(argv+1, &fputs_wrapper, stdout, NULL); |
Laurence Lundblade | 74f6841 | 2018-09-13 12:18:49 -0700 | [diff] [blame] | 40 | } |