@micro-os-plus/micro-test-plus 2.1.1 → 3.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -6,140 +6,417 @@ Please check
6
6
  [GitHub](https://github.com/micro-os-plus/micro-test-plus-xpack/issues/)
7
7
  and close existing issues and pull requests.
8
8
 
9
+ ## 2022-04-19
10
+
11
+ * 3.0.2
12
+ * cd697a4 README reworks
13
+
14
+ ## 2022-04-10
15
+
16
+ * d53ee24 package.json: bump build-helper 2.7.1
17
+
18
+ ## 2022-04-07
19
+
20
+ * b43ce71 test-all.yml: remove Raspberry Pi OS test
21
+
22
+ ## 2022-04-05
23
+
24
+ * 3.0.1
25
+ * d8f24e6 #5 add parametrised test suites
26
+
27
+ ## 2022-04-03
28
+
29
+ * c3053d5 3.0.0
30
+
31
+ ## 2022-04-01
32
+
33
+ * a944962 test-reporter.cpp: use check marks for suites
34
+ * de8065f add support for unused main test suite
35
+
36
+ ## 2022-03-31
37
+
38
+ * ab6a3d5 try parametrized test suites; not ready
39
+ * 3eb96f7 sample-test: explicit namespaces
40
+
41
+ ## 2022-03-28
42
+
43
+ * 0b8ab47 launch.json: --verbose unit-test
44
+ * aa405f5 test-reporter minor rework
45
+ * c5a6e54 implement assume() with the same deferred_reporter
46
+ * 4906cd5 test-reporter: add output() method
47
+ * db00b7f add reported_ and run()
48
+
49
+ ## 2022-03-27
50
+
51
+ * 11bcfd1 bump build-helper 2.6.3
52
+ * 5afa470 CI: bump clang13
53
+ * 3020ffe optimise deferred reporters
54
+
55
+ ## 2022-03-26
56
+
57
+ * d8b9071 revert to build-helper 2.6.1
58
+ * 602d5d8 implement expect() << "message"
59
+ * 14ce153 package.json: meson platform toolchain files
60
+ * 367b706 unit-test.cpp: fix __xx warning
61
+ * 3ec0a21 add clang13
62
+ * 356f2f9 package.json: bump cmake & meson
63
+
64
+ ## 2022-03-23
65
+
66
+ * 255d4e5 README updates
67
+ * c837032 package.json: bump buld-helper 2.6.2
68
+ * 49a3129 package.json: bump gcc 11.2.0-3.3
69
+ * 568d799 revert to interface library
70
+
71
+ ## 2022-03-21
72
+
73
+ * c3729b8 process_deferred_begin
74
+ * 601c428 unit-tests fix messages
75
+ * 7340d7b printf string_view content
76
+ * 0a5bb6b test-reporter cosmetics (.)
77
+ * 4871095 colors as const char*
78
+ * f9c25c8 meson: update for static library
79
+
80
+ ## 2022-03-20
81
+
82
+ * 79d72b2 README add Getting Started
83
+ * 8bb653f constexpr evaluate_and_report_
84
+ * c993275 reorder initialize()
85
+ * ebfb155 remove redundant pass()/fail()
86
+ * 03cc86d test-runner: argv[] cosmetics
87
+ * 3904bcb #pragma cleanups
88
+ * 7fe3bfd group several small *-inlines.h together
89
+ * 11fe6e8 add utility namespace
90
+ * 065824a unit-test: add static checks
91
+ * 48faa97 unit-test: add reflection::type_name() test
92
+ * 85aec05 unit-test: silence warning
93
+ * 7342f2c math.h: silence warning
94
+ * 4aeaa0d reflection: fix type_name()
95
+ * 7d6bd77 reflection.h: fix clang non apple
96
+ * 02eda65 reflection.h: warning/error in type_name()
97
+ * c5ab1d2 launch: add (gdb) native-cmake-clang12-debug
98
+
99
+ ## 2022-03-17
100
+
101
+ * 01e6a21 unit-test.cpp: rename tests
102
+ * 327441d implement different verbosity
103
+ * 904e3ff remove trace in eq_
104
+
105
+ ## 2022-03-16
106
+
107
+ * 116571d bump build-helper 2.6.1
108
+
109
+ ## 2022-03-15
110
+
111
+ * d15b203 change to static library
112
+ * ad94a46 remove dependency from diag-trace, use printf()
113
+ * 9d387c8 reporter: disable unused generic <<
114
+ * eebde5f reporter: rework constant suffixes
115
+ * b43d2b0 reporter.fail print value only if is_op_v
116
+ * dca5409 literals.h: add comments
117
+ * d9021c4 sample-test update for new README examples
118
+ * df5d8b5 update README and docs
119
+ * cd3f97d split detail-inlines.h
120
+
121
+ ## 2022-03-14
122
+
123
+ * f64083c revert from operators to functions
124
+ * 3ec0454 unit-test: add logical & operators
125
+ * d0d689a unit-test silence -Wdouble-promotion
126
+ * a635d1a docs & cosmetics
127
+ * f346a7a rename Callable_T
128
+ * ed9d0f2 .vscode/launch: add unit-test
129
+ * dc6ccca remove unused pointer _and(), _or(), _not()
130
+ * 67e2c43 fix meson -Wno-used-but-marked-unused
131
+ * 120c675 -Wno-used-but-marked-unused for clang on windows
132
+ * a6fee32 CI install --quiet
133
+ * 7e67230 add -Wno-missing-include-dirs to build
134
+ * b059c71 silence -Wmissing-include-dirs for GCC too
135
+ * 263b87e silence clang -Wmissing-include-dirs
136
+ * 1e8fc05 cosmetics
137
+ * 285a86a rework #includes
138
+ * 52fc562 split test-reporter & detail
139
+ * 17b0e3e split test-runner.h
140
+ * 62c7539 split inlines
141
+ * 2256fbf rename type-traits.h
142
+ * adc648e enable -Werror for native
143
+ * 037c767 split test-suite.cpp
144
+ * a80ea1a test-suite invokes reporter
145
+ * ce4c241 split test-suite.h
146
+ * a4a262a cleanup print_expr declaration
147
+ * 4b1984c split test-reporter.cpp
148
+ * e74786e split test-runner.cpp
149
+ * e4c7ed4 literals add docu
150
+ * 2f5efdd move casts to literals.h
151
+ * b1a0b55 move struct value to type_traits
152
+ * a9ec726 split literals.h
153
+ * bd64244 more type_triats moves
154
+ * 5a98f64 remove unused struct type_
155
+ * 8176edc move op & _constants to type_traits.h
156
+ * 658bf72 silence warnings
157
+ * 8407e38 fix type_traits guard
158
+
159
+ ## 2022-03-13
160
+
161
+ * 1d5e4a9 docs
162
+ * 00e26c1 separate test_reporter implementation & inlines
163
+ * 7700eee rename Other_T
164
+ * 1c760ba split type_traits.h
165
+ * 2d7d4e8 split math.h
166
+ * c6b33c0 include source_location in reflection.h
167
+ * 149bbf5 rename Xxx_T
168
+ * ccd6482 split reflection.h
169
+ * 33390a4 remove deprecated expect_equal()
170
+ * cf4831a remove unused operators
171
+ * 33e84e9 add operators
172
+ * 63714b9 unit-test cleanup
173
+ * 51bb43c use evaluate_and_report_()
174
+ * 35a1ad1 unit-test: expect() without message
175
+ * 4cbe008 add explicit _not _and _or
176
+ * b36dfa6 move to detail::assertion
177
+ * 6dac36c README: mention string comparisons
178
+ * 8d04508 unit-test: cleanups & comments
179
+ * 5b2153d unit-test: check default messages
180
+ * eef5709 sample test pass() message
181
+ * cfd924d sample-test: include string_view
182
+ * 3968eef add @brief and comments
183
+ * 48ea51e reorder and cleanup operator <<
184
+ * 52e2fbc simplify trace eq_ messages
185
+ * 1d63119 provide a default for the message
186
+ * db9ae66 add type suffixes when displaying scalar values
187
+ * 406d48e add genuine_integral_value{}
188
+ * 8fb68ae cosmetics
189
+ * 18163a0 unit_test major rewrite
190
+ * e9e3fa2 sample-test: use string_view
191
+ * ddcd2a2 cmake cleanup
192
+ * 86996ed cmake xpack_create_hex
193
+ * ff53277 cmake add SIZE
194
+ * a34a283 cmake add report SIZE
195
+
196
+ ## 2022-03-12
197
+
198
+ * f657ba0 add literals & more types
199
+ * f1676c1 more flush
200
+ * 357aefb rework operator<<
201
+ * 9250199 add more trace::printf
202
+ * fd7cf12 silence warnings
203
+ * ee30f22 more flush()
204
+ * d8e8900 add assume() with abort
205
+ * 646d374 add runner.name()
206
+
207
+ ## 2022-03-03
208
+
209
+ * 3f84859 consistent copyright notices
210
+ * 278aff5 Add reference to boost license in copyright notice
211
+ * 28b5887 README: update for v3.x
212
+ * 2419718 add boost license
213
+ * 4e02d9d meson cosmetics
214
+ * 6ed18d2 package.json: native only on darwin
215
+ * d416cb3 quiet installs
216
+ * f93be58 package.json: remove gcc8
217
+ * 8d468c5 rework cmake & meson
218
+ * 687072c silence warnings
219
+ * b2bf818 sample-test: fix check args
220
+ * 2cf994c sample-test: silence warnings
221
+ * 6aed55a unit-test: temporarily disabled
222
+
223
+ ## 2022-03-02
224
+
225
+ * 7117f36 launch.json: update
226
+ * b9bdb0f sample-test: rework with new comparators
227
+ * 8f0bc1f rework based on boost ut
228
+ * 58c0ba8 native/config.h comment _STDERR
229
+
230
+ ## 2022-03-01
231
+
232
+ * db86cd1 add test_suite
233
+
234
+ ## 2022-02-28
235
+
236
+ * 1120ed7 migrate to non-class functions
237
+
238
+ ## 2022-02-27
239
+
240
+ * b3c12ab C++20
241
+ * c694f49 MICRO_OS_PLUS_TRACE
242
+ * f43a1ab platform-native/config.h: TRACE buffer 500
243
+
244
+ ## 2022-02-19
245
+
246
+ * v2.3.0
247
+ * 94b340c use nested namespaces
248
+ * f921bf0 sample-test: cleanup globals
249
+ * 66df97e add support for test-all
250
+ * f6c19d2 cmake globals add -fdiagnostics-color=always
251
+ * 28efe4b add parameterised tests and combinatorials
252
+ * 560b678 add run_test_case variadic template
253
+ * 436a1ae deprecate run_test_case(func, name)
254
+ * 0a6a46b add start_test_case()
255
+
256
+ ## 2022-02-18
257
+
258
+ * 5d0e9be package.json bump helper
259
+ * 69d6dec rework expect_equal with templates
260
+
261
+ ## 2022-02-16
262
+
263
+ * 9d97cb1 meson: remove utf-8 chars
264
+
265
+ ## 2022-02-10
266
+
267
+ * 776845a .c* include <micro-os-plus/config.h>
268
+ * 8f3e441 meson.build cosmetics
269
+
270
+ ## 2022-02-09
271
+
272
+ * 4fcb75d MICRO_OS_PLUS_INCLUDE_CONFIG_H
273
+ * 81186d0 rename MICRO_OS_PLUS_DEBUG
274
+
275
+ ## 2022-02-08
276
+
277
+ * 9c23c7d package.json: disable stm32f4 on Apple Silicon
278
+ * 3969095 package.json: bump clang
279
+ * 623e72d rename MICRO_OS_PLUS_TRACE
280
+
281
+ ## 2022-02-06
282
+
283
+ * f1a8f80 MICRO_OS_PLUS_HAS_CONFIG_H
284
+ * 4d46a63 disable -flto on armv7l
285
+
9
286
  ## 2022-02-05
10
287
 
11
- - v2.2.1
12
- - 473d3f3 package.json: use npmjs.com deps
13
- - b88b767 CI.yml try to enable qemu-cmake on Windows
14
- - 518645c package.json: enable cortexm builds on windows
15
- - e342558 meson create symbolic link at build time
16
- - 00ff79d cmake revert to .. instead of top symlink
17
- - 68053a5 package.json: bump build-helper
18
- - 65918f6 cmake notice that -flto fails on embedded
19
- - 868c55d meson native with_linux_clang_lto
20
- - a223600 meson: notice that -flto fails on embedded
21
- - bb3628a meson always include warnings
22
- - 1d1e612 meson revert to warning_level = 0
23
- - cc41eac meson native without -flto
24
- - d562a5e cmake native add --gc-sections
25
- 4bee003 cmake globals -flto for release
26
- - c2c7972 package.json: bump devices-stm32f4-extras
27
- - 6139edb meson: disable -flto for clang on linux
288
+ * v2.2.1
289
+ * 473d3f3 package.json: use npmjs.com deps
290
+ * b88b767 CI.yml try to enable qemu-cmake on Windows
291
+ * 518645c package.json: enable cortexm builds on windows
292
+ * e342558 meson create symbolic link at build time
293
+ * 00ff79d cmake revert to .. instead of top symlink
294
+ * 68053a5 package.json: bump build-helper
295
+ * 65918f6 cmake notice that -flto fails on embedded
296
+ * 868c55d meson native with_linux_clang_lto
297
+ * a223600 meson: notice that -flto fails on embedded
298
+ * bb3628a meson always include warnings
299
+ * 1d1e612 meson revert to warning_level = 0
300
+ * cc41eac meson native without -flto
301
+ * d562a5e cmake native add --gc-sections
302
+ * 4bee003 cmake globals -flto for release
303
+ * c2c7972 package.json: bump devices-stm32f4-extras
304
+ * 6139edb meson: disable -flto for clang on linux
28
305
 
29
306
  ## 2022-02-04
30
307
 
31
- - v2.2.0
32
- - 18219ef package.json: bump deps
33
- - d30ea7d updates for device-*cortexm
34
- - 33e2244 cmake: add xpack_display_target_lists
35
- - 4f7324b package.json: add stm32f4discovery meson
308
+ * v2.2.0
309
+ * 18219ef package.json: bump deps
310
+ * d30ea7d updates for device-*cortexm
311
+ * 33e2244 cmake: add xpack_display_target_lists
312
+ * 4f7324b package.json: add stm32f4discovery meson
36
313
 
37
314
  ## 2022-02-03
38
315
 
39
- - d64bd80 cmake update qemu-mps2
40
- - 18955fa cmake update stm32f4discovery
41
- - e4541e9 cmake update for interface
316
+ * d64bd80 cmake update qemu-mps2
317
+ * 18955fa cmake update stm32f4discovery
318
+ * e4541e9 cmake update for interface
42
319
 
43
320
  ## 2022-02-02
44
321
 
45
- - e703fa9 .vscode/launch.json: add qemu launchers
46
- - 3055967 cmake: rework test commands
322
+ * e703fa9 .vscode/launch.json: add qemu launchers
323
+ * 3055967 cmake: rework test commands
47
324
 
48
325
  ## 2022-02-01
49
326
 
50
- - 90e894f add meson qemu
51
- - 6f55a37 package.json: rename dependencies to device-*
52
- - fde47e6 package.json: move toolchain files to folder
53
- - 041c252 cmake: rename platform-qemu-mps2-an386
54
- - 1230c9b cmake: update for device-qemu-cortexm
55
- - 10304ab rename platform-qemu-mps2-an386
327
+ * 90e894f add meson qemu
328
+ * 6f55a37 package.json: rename dependencies to device-*
329
+ * fde47e6 package.json: move toolchain files to folder
330
+ * 041c252 cmake: rename platform-qemu-mps2-an386
331
+ * 1230c9b cmake: update for device-qemu-cortexm
332
+ * 10304ab rename platform-qemu-mps2-an386
56
333
 
57
334
  ## 2022-01-28
58
335
 
59
- - 829ffbd separate top CMake config for tests
60
- - 920a928 add top symbolic link
61
- - 9a5987e sample-test.cpp: static variables
62
- - 82c83d8 sample-test.cpp: test args
336
+ * 829ffbd separate top CMake config for tests
337
+ * 920a928 add top symbolic link
338
+ * 9a5987e sample-test.cpp: static variables
339
+ * 82c83d8 sample-test.cpp: test args
63
340
 
64
341
  ## 2022-01-26
65
342
 
66
- - 15d6fe9 package.json: skip qemu tests on windows
67
- - v2.1.0
68
- - rework CMake
343
+ * 15d6fe9 package.json: skip qemu tests on windows
344
+ * v2.1.0
345
+ * rework CMake
69
346
 
70
347
  ## 2022-01-03
71
348
 
72
- - v2.0.5
349
+ * v2.0.5
73
350
 
74
351
  ## 2022-01-02
75
352
 
76
- - CI.yml: remove native-cmake
77
- - package.json: add meson gcc/clang
78
- - PLATFORM_STM32F4DISCOVERY_WITHOUT_HAL
353
+ * CI.yml: remove native-cmake
354
+ * package.json: add meson gcc/clang
355
+ * PLATFORM_STM32F4DISCOVERY_WITHOUT_HAL
79
356
 
80
357
  ## 2022-01-01
81
358
 
82
- - meson.build: add /utf-8 to msvc options
83
- - [#4] add support for MSVC
84
- - package.json: use posix paths on windows
359
+ * meson.build: add /utf-8 to msvc options
360
+ * [#4] add support for MSVC
361
+ * package.json: use posix paths on windows
85
362
 
86
363
  ## 2021-12-29
87
364
 
88
- - stm32f4discovery test functional
89
- - add native meson tests
90
- - package.json: add clang12 test
91
- - add explicit CMakeLists.txt
365
+ * stm32f4discovery test functional
366
+ * add native meson tests
367
+ * package.json: add clang12 test
368
+ * add explicit CMakeLists.txt
92
369
 
93
370
  ## 2021-12-26
94
371
 
95
- - package.json: move devDeps to configs
96
- - CI.yml: test-native
97
- - package.json: migrate native to xpack actions
372
+ * package.json: move devDeps to configs
373
+ * CI.yml: test-native
374
+ * package.json: migrate native to xpack actions
98
375
 
99
376
  ## 2021-03-13
100
377
 
101
- - v2.0.4
102
- - remove -pedantic-errors, use -Werror only on bare-metal
378
+ * v2.0.4
379
+ * remove -pedantic-errors, use -Werror only on bare-metal
103
380
 
104
381
  ## 2021-03-10
105
382
 
106
- - v2.0.3
107
- - bump devDeps
383
+ * v2.0.3
384
+ * bump devDeps
108
385
 
109
386
  ## 2021-03-09
110
387
 
111
- - v2.0.2
112
- - fix/silence warnings
113
- - remove warning flags from cmake
388
+ * v2.0.2
389
+ * fix/silence warnings
390
+ * remove warning flags from cmake
114
391
 
115
392
  ## 2021-03-02
116
393
 
117
- - v2.0.1
118
- - fix warnings, add -Wall..., -Werrror
394
+ * v2.0.1
395
+ * fix warnings, add -Wall..., -Werrror
119
396
 
120
397
  ## 2021-03-01
121
398
 
122
- - v2.0.0
399
+ * v2.0.0
123
400
 
124
401
  ## 2021-02-28
125
402
 
126
- - rename micro_os_plus
403
+ * rename micro_os_plus
127
404
 
128
405
  ## 2021-02-12
129
406
 
130
- - add support for CMake find_package()
407
+ * add support for CMake find_package()
131
408
 
132
409
  ## 2021-02-07
133
410
 
134
- - prepare v2.0.0-pre
135
- - [#1] - rename micro_test_plus::session
136
- - [#2] - sample-test: conditional exceptions
137
- - [#3] - add stm32f4discovery tests
411
+ * prepare v2.0.0-pre
412
+ * [#1] - rename micro_test_plus::session
413
+ * [#2] - sample-test: conditional exceptions
414
+ * [#3] - add stm32f4discovery tests
138
415
 
139
416
  ## 2021-02-05
140
417
 
141
- - prepare v1.1.1-pre
418
+ * prepare v1.1.1-pre
142
419
 
143
420
  ## 2021-02-04
144
421
 
145
- - release preliminary v1.1.0
422
+ * release preliminary v1.1.0
package/CMakeLists.txt CHANGED
@@ -1,6 +1,7 @@
1
+ # -----------------------------------------------------------------------------
1
2
  #
2
3
  # This file is part of the µOS++ distribution.
3
- # (https://github.com/micro-os-plus)
4
+ # (https://github.com/micro-os-plus/)
4
5
  # Copyright (c) 2021 Liviu Ionescu
5
6
  #
6
7
  # Permission to use, copy, modify, and/or distribute this software
@@ -48,39 +49,27 @@ add_library(micro-os-plus-micro-test-plus-interface INTERFACE)
48
49
  # -----------------------------------------------------------------------------
49
50
  # Target settings.
50
51
 
51
- target_include_directories(
52
- micro-os-plus-micro-test-plus-interface
53
-
54
- INTERFACE
55
- "include"
52
+ target_include_directories(micro-os-plus-micro-test-plus-interface INTERFACE
53
+ "include"
56
54
  )
57
55
 
58
- target_sources(
59
- micro-os-plus-micro-test-plus-interface
60
-
61
- INTERFACE
62
- "src/micro-test-plus.cpp"
56
+ target_sources(micro-os-plus-micro-test-plus-interface INTERFACE
57
+ "src/micro-test-plus.cpp"
58
+ "src/test-runner.cpp"
59
+ "src/test-reporter.cpp"
60
+ "src/test-suite.cpp"
63
61
  )
64
62
 
65
- target_compile_definitions(
66
- micro-os-plus-micro-test-plus-interface
67
-
68
- INTERFACE
69
- # ...
63
+ target_compile_definitions(micro-os-plus-micro-test-plus-interface INTERFACE
64
+ # None.
70
65
  )
71
66
 
72
- target_compile_options(
73
- micro-os-plus-micro-test-plus-interface
74
-
75
- INTERFACE
76
- # ...
67
+ target_compile_options(micro-os-plus-micro-test-plus-interface INTERFACE
68
+ # None.
77
69
  )
78
70
 
79
- target_link_libraries(
80
- micro-os-plus-micro-test-plus-interface
81
-
82
- INTERFACE
83
- # ...
71
+ target_link_libraries(micro-os-plus-micro-test-plus-interface INTERFACE
72
+ # None.
84
73
  )
85
74
 
86
75
  if (COMMAND xpack_display_target_lists)
package/LICENSE-Boost ADDED
@@ -0,0 +1,23 @@
1
+ Boost Software License - Version 1.0 - August 17th, 2003
2
+
3
+ Permission is hereby granted, free of charge, to any person or organization
4
+ obtaining a copy of the software and accompanying documentation covered by
5
+ this license (the "Software") to use, reproduce, display, distribute,
6
+ execute, and transmit the Software, and to prepare derivative works of the
7
+ Software, and to permit third-parties to whom the Software is furnished to
8
+ do so, all subject to the following:
9
+
10
+ The copyright notices in the Software and this entire statement, including
11
+ the above license grant, this restriction and the following disclaimer,
12
+ must be included in all copies of the Software, in whole or in part, and
13
+ all derivative works of the Software, unless such copies or derivative
14
+ works are solely in the form of machine-executable object code generated by
15
+ a source language processor.
16
+
17
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19
+ FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
20
+ SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
21
+ FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
22
+ ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
23
+ DEALINGS IN THE SOFTWARE.