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 | d4cd723 | 2020-07-03 19:30:48 -0700 | [diff] [blame] | 15 | #include "example.h" |
Laurence Lundblade | 74f6841 | 2018-09-13 12:18:49 -0700 | [diff] [blame] | 16 | |
Laurence Lundblade | a954db9 | 2018-09-28 19:27:31 -0700 | [diff] [blame] | 17 | |
Laurence Lundblade | 1f8b5b0 | 2019-01-01 22:27:38 -0800 | [diff] [blame] | 18 | /* |
| 19 | This is an implementation of OutputStringCB built using stdio. If |
Laurence Lundblade | a3fd49f | 2019-01-21 10:16:22 -0800 | [diff] [blame] | 20 | you don't have stdio, replaces this. |
Laurence Lundblade | 1f8b5b0 | 2019-01-01 22:27:38 -0800 | [diff] [blame] | 21 | */ |
Laurence Lundblade | d396f62 | 2019-01-12 17:12:29 -0800 | [diff] [blame] | 22 | static void fputs_wrapper(const char *szString, void *pOutCtx, int bNewLine) |
Laurence Lundblade | cc2ed34 | 2018-09-22 17:29:55 -0700 | [diff] [blame] | 23 | { |
Laurence Lundblade | d396f62 | 2019-01-12 17:12:29 -0800 | [diff] [blame] | 24 | fputs(szString, (FILE *)pOutCtx); |
| 25 | if(bNewLine) { |
| 26 | fputs("\n", pOutCtx); |
| 27 | } |
Laurence Lundblade | 8ca1369 | 2018-12-04 14:35:53 +0900 | [diff] [blame] | 28 | } |
| 29 | |
| 30 | |
Laurence Lundblade | 570fab5 | 2018-10-13 18:28:27 +0800 | [diff] [blame] | 31 | int main(int argc, const char * argv[]) |
| 32 | { |
Laurence Lundblade | 1f8b5b0 | 2019-01-01 22:27:38 -0800 | [diff] [blame] | 33 | (void)argc; // Avoid unused parameter error |
Laurence Lundblade | a44d506 | 2018-10-17 18:45:12 +0530 | [diff] [blame] | 34 | |
Laurence Lundblade | 323f8a9 | 2020-09-06 19:43:09 -0700 | [diff] [blame] | 35 | RunQCborExample(); |
Laurence Lundblade | d4cd723 | 2020-07-03 19:30:48 -0700 | [diff] [blame] | 36 | |
| 37 | |
Laurence Lundblade | 1f8b5b0 | 2019-01-01 22:27:38 -0800 | [diff] [blame] | 38 | // This call prints out sizes of data structures to remind us |
| 39 | // to keep them small. |
Laurence Lundblade | 29501b7 | 2020-01-16 15:05:18 -0800 | [diff] [blame] | 40 | PrintSizesQCBOR(&fputs_wrapper, stdout); |
Laurence Lundblade | 3aee3a3 | 2018-12-17 16:17:45 -0800 | [diff] [blame] | 41 | |
Laurence Lundblade | 1f8b5b0 | 2019-01-01 22:27:38 -0800 | [diff] [blame] | 42 | // This runs all the tests |
Laurence Lundblade | 29501b7 | 2020-01-16 15:05:18 -0800 | [diff] [blame] | 43 | return RunTestsQCBOR(argv+1, &fputs_wrapper, stdout, NULL); |
Laurence Lundblade | 74f6841 | 2018-09-13 12:18:49 -0700 | [diff] [blame] | 44 | } |