API
 
Loading...
Searching...
No Matches
software_log_generated_tests.cpp
Go to the documentation of this file.
1#include <assert.h>
2#include "../../../../tests/catch2/catch.hpp"
3#include "../generated/logCodes.hpp"
4#include "../types/software_log.hpp"
5#include "../types/generated/software_log_generated.h"
6#include "../types/flatbuffer_log.hpp"
7
8/*
9 * GENERATED TEST FILE for types/software_log.hpp
10 * generated by generateTemplateCatch2Tests.py
11 */
12
13const char * softwareLogFile_0 = "16o2v225kf"; // dummy file
14const uint32_t softwareLogLine_0 = 2104871043; // dummy line
15const int32_t softwareLogErrnoCode_0 = -759937723; // dummy errnoCode
16const int32_t softwareLogOtherCode_0 = -1277624151; // dummy otherCode
17const char * softwareLogExplanation_0 = "ywgtnage2v"; // dummy explanation
18
19
20/** Class to encapsulate software_log flatbuffer data using
21 ** => types/software_log.hpp
22 ** => types/generated/software_log_generated.h
23 **/
25{
26public:
27 // Saved input parameter value; unused
29 uint32_t m_saveSlLine;
33
34 // Parameters retrieved from flatbuffer
35 char * m_file;
36 uint32_t m_line;
37 int32_t m_errnoCode;
38 int32_t m_otherCode;
40
41 // Flatbuffers verifier success/failure
42 bool m_verify{false};
43
44 // flatbuffer data length; used in ::verify
45 int L;
46
47 // Constructor
48 CSoftwareLog_0(char * file_, uint32_t line_, int32_t errnoCode_, int32_t otherCode_, char * explanation_) {
49 // Save input parameters
50 m_saveSlFile = file_;
51 m_saveSlLine = line_;
52 m_saveSlErrnoCode = errnoCode_;
53 m_saveSlOtherCode = otherCode_;
54 m_saveSlExplanation = explanation_;
55
56 // Create the flatbuffer messageT using the input parameters
57 auto sl = MagAOX::logger::software_log::messageT(file_, line_, errnoCode_, otherCode_, explanation_);
58
59 // Retrieve flatbuffer pointer (if not an empty_log type) and length
60 void* buffPtr = sl.builder.GetBufferPointer();
62
63 // Retrieve the flatbuffer parameters for Catch2 comparison below
64 size_t fileStrLen = strlen(MagAOX::logger::GetSoftware_log_fb(buffPtr)->file()->c_str()) + 1;
65 m_file = (char *) malloc(fileStrLen);
66 strncpy(m_file, MagAOX::logger::GetSoftware_log_fb(buffPtr)->file()->c_str(), fileStrLen);
68 m_errnoCode = MagAOX::logger::GetSoftware_log_fb(buffPtr)->errnoCode();
69 m_otherCode = MagAOX::logger::GetSoftware_log_fb(buffPtr)->otherCode();
70 size_t explanationStrLen = strlen(MagAOX::logger::GetSoftware_log_fb(buffPtr)->explanation()->c_str()) + 1;
71 m_explanation = (char *) malloc(explanationStrLen);
72 strncpy(m_explanation, MagAOX::logger::GetSoftware_log_fb(buffPtr)->explanation()->c_str(), explanationStrLen);
73
74 // Run the software_log verifier
75 m_verify = verify(sl);
76 }
77
78 // Run the flatbuffer Verifier for this log type
79 // - requires bufferPtrT (shared_ptr<char*>) to full log entry
80 // comprising log header plus flatbuffer log message
82
83 // Timestamp, prioriy (use nominal value here)
84 flatlogs::timespecX tsx{0,0};
86
87 // Create full log: log header(*); log message (+)
88 // * Log level (priority)
89 // * Event code (implicit in <MagAOX::logger::type>)
90 // * Timestamp
91 // * Message size (variable length; 1, 2, or 8 bytes)
92 // + Message (variable length)
93
94 // N.G. allocates space and writes pointer value to logBuffer
95 flatlogs::bufferPtrT logBuffer;
96 flatlogs::logHeader::createLog<MagAOX::logger::software_notice>(logBuffer
97 , tsx, msg
98 , prio);
99 // Run full log through flatbuffer Verifier
100 return MagAOX::logger::software_log::verify(logBuffer,L);
101 }
102};
103
104SCENARIO( "Create software_log 0", "[a log item]")
105{
106 GIVEN("a software_log log code")
107 {
108 WHEN("random values for fields")
109 {
110 // Create flatbuffer
112 // Compare flatbuffer parameters
113 REQUIRE(strcmp(sl.m_file, softwareLogFile_0) == 0);
114 REQUIRE(sl.m_line == softwareLogLine_0);
115 REQUIRE(sl.m_errnoCode == softwareLogErrnoCode_0);
116 REQUIRE(sl.m_otherCode == softwareLogOtherCode_0);
117 REQUIRE(strcmp(sl.m_explanation, softwareLogExplanation_0) == 0);
118 REQUIRE(sl.m_verify);
119 }
120 }
121}
122
123const char * softwareLogFile_1 = "m2yj4dkbqe"; // dummy file
124const uint32_t softwareLogLine_1 = 2591561709; // dummy line
125const int32_t softwareLogErrnoCode_1 = 1435732986; // dummy errnoCode
126const int32_t softwareLogOtherCode_1 = -155782355; // dummy otherCode
127const std::string softwareLogExplanation_1 = "kj5v8n8bgk"; // dummy explanation
128
129
130/** Class to encapsulate software_log flatbuffer data using
131 ** => types/software_log.hpp
132 ** => types/generated/software_log_generated.h
133 **/
135{
136public:
137 // Saved input parameter value; unused
139 uint32_t m_saveSlLine;
143
144 // Parameters retrieved from flatbuffer
145 char * m_file;
146 uint32_t m_line;
147 int32_t m_errnoCode;
148 int32_t m_otherCode;
149 std::string m_explanation;
150
151 // Flatbuffers verifier success/failure
152 bool m_verify{false};
153
154 // flatbuffer data length; used in ::verify
155 int L;
156
157 // Constructor
158 CSoftwareLog_1(char * file_, uint32_t line_, int32_t errnoCode_, int32_t otherCode_, std::string explanation_) {
159 // Save input parameters
160 m_saveSlFile = file_;
161 m_saveSlLine = line_;
162 m_saveSlErrnoCode = errnoCode_;
163 m_saveSlOtherCode = otherCode_;
164 m_saveSlExplanation = explanation_;
165
166 // Create the flatbuffer messageT using the input parameters
167 auto sl = MagAOX::logger::software_log::messageT(file_, line_, errnoCode_, otherCode_, explanation_);
168
169 // Retrieve flatbuffer pointer (if not an empty_log type) and length
170 void* buffPtr = sl.builder.GetBufferPointer();
172
173 // Retrieve the flatbuffer parameters for Catch2 comparison below
174 size_t fileStrLen = strlen(MagAOX::logger::GetSoftware_log_fb(buffPtr)->file()->c_str()) + 1;
175 m_file = (char *) malloc(fileStrLen);
176 strncpy(m_file, MagAOX::logger::GetSoftware_log_fb(buffPtr)->file()->c_str(), fileStrLen);
178 m_errnoCode = MagAOX::logger::GetSoftware_log_fb(buffPtr)->errnoCode();
179 m_otherCode = MagAOX::logger::GetSoftware_log_fb(buffPtr)->otherCode();
180 m_explanation = std::string(MagAOX::logger::GetSoftware_log_fb(buffPtr)->explanation()->c_str());
181
182 // Run the software_log verifier
183 m_verify = verify(sl);
184 }
185
186 // Run the flatbuffer Verifier for this log type
187 // - requires bufferPtrT (shared_ptr<char*>) to full log entry
188 // comprising log header plus flatbuffer log message
190
191 // Timestamp, prioriy (use nominal value here)
192 flatlogs::timespecX tsx{0,0};
194
195 // Create full log: log header(*); log message (+)
196 // * Log level (priority)
197 // * Event code (implicit in <MagAOX::logger::type>)
198 // * Timestamp
199 // * Message size (variable length; 1, 2, or 8 bytes)
200 // + Message (variable length)
201
202 // N.G. allocates space and writes pointer value to logBuffer
203 flatlogs::bufferPtrT logBuffer;
204 flatlogs::logHeader::createLog<MagAOX::logger::software_notice>(logBuffer
205 , tsx, msg
206 , prio);
207 // Run full log through flatbuffer Verifier
208 return MagAOX::logger::software_log::verify(logBuffer,L);
209 }
210};
211
212SCENARIO( "Create software_log 1", "[a log item]")
213{
214 GIVEN("a software_log log code")
215 {
216 WHEN("random values for fields")
217 {
218 // Create flatbuffer
220 // Compare flatbuffer parameters
221 REQUIRE(strcmp(sl.m_file, softwareLogFile_1) == 0);
222 REQUIRE(sl.m_line == softwareLogLine_1);
223 REQUIRE(sl.m_errnoCode == softwareLogErrnoCode_1);
224 REQUIRE(sl.m_otherCode == softwareLogOtherCode_1);
226 REQUIRE(sl.m_verify);
227 }
228 }
229}
230
231const char * softwareLogFile_2 = "9v9yr0p7q4"; // dummy file
232const uint32_t softwareLogLine_2 = 1203444101; // dummy line
233const int32_t softwareLogErrnoCode_2 = -1698960755; // dummy errnoCode
234
235
236/** Class to encapsulate software_log flatbuffer data using
237 ** => types/software_log.hpp
238 ** => types/generated/software_log_generated.h
239 **/
241{
242public:
243 // Saved input parameter value; unused
245 uint32_t m_saveSlLine;
247
248 // Parameters retrieved from flatbuffer
249 char * m_file;
250 uint32_t m_line;
251 int32_t m_errnoCode;
252
253 // Flatbuffers verifier success/failure
254 bool m_verify{false};
255
256 // flatbuffer data length; used in ::verify
257 int L;
258
259 // Constructor
260 CSoftwareLog_2(char * file_, uint32_t line_, int32_t errnoCode_) {
261 // Save input parameters
262 m_saveSlFile = file_;
263 m_saveSlLine = line_;
264 m_saveSlErrnoCode = errnoCode_;
265
266 // Create the flatbuffer messageT using the input parameters
267 auto sl = MagAOX::logger::software_log::messageT(file_, line_, errnoCode_);
268
269 // Retrieve flatbuffer pointer (if not an empty_log type) and length
270 void* buffPtr = sl.builder.GetBufferPointer();
272
273 // Retrieve the flatbuffer parameters for Catch2 comparison below
274 size_t fileStrLen = strlen(MagAOX::logger::GetSoftware_log_fb(buffPtr)->file()->c_str()) + 1;
275 m_file = (char *) malloc(fileStrLen);
276 strncpy(m_file, MagAOX::logger::GetSoftware_log_fb(buffPtr)->file()->c_str(), fileStrLen);
278 m_errnoCode = MagAOX::logger::GetSoftware_log_fb(buffPtr)->errnoCode();
279
280 // Run the software_log verifier
281 m_verify = verify(sl);
282 }
283
284 // Run the flatbuffer Verifier for this log type
285 // - requires bufferPtrT (shared_ptr<char*>) to full log entry
286 // comprising log header plus flatbuffer log message
288
289 // Timestamp, prioriy (use nominal value here)
290 flatlogs::timespecX tsx{0,0};
292
293 // Create full log: log header(*); log message (+)
294 // * Log level (priority)
295 // * Event code (implicit in <MagAOX::logger::type>)
296 // * Timestamp
297 // * Message size (variable length; 1, 2, or 8 bytes)
298 // + Message (variable length)
299
300 // N.G. allocates space and writes pointer value to logBuffer
301 flatlogs::bufferPtrT logBuffer;
302 flatlogs::logHeader::createLog<MagAOX::logger::software_notice>(logBuffer
303 , tsx, msg
304 , prio);
305 // Run full log through flatbuffer Verifier
306 return MagAOX::logger::software_log::verify(logBuffer,L);
307 }
308};
309
310SCENARIO( "Create software_log 2", "[a log item]")
311{
312 GIVEN("a software_log log code")
313 {
314 WHEN("random values for fields")
315 {
316 // Create flatbuffer
318 // Compare flatbuffer parameters
319 REQUIRE(strcmp(sl.m_file, softwareLogFile_2) == 0);
320 REQUIRE(sl.m_line == softwareLogLine_2);
321 REQUIRE(sl.m_errnoCode == softwareLogErrnoCode_2);
322 REQUIRE(sl.m_verify);
323 }
324 }
325}
326
327const char * softwareLogFile_3 = "mrt7vo2gds"; // dummy file
328const uint32_t softwareLogLine_3 = 3196916191; // dummy line
329const int32_t softwareLogErrnoCode_3 = -1883955227; // dummy errnoCode
330const char * softwareLogExplanation_3 = "5nexm3rfpq"; // dummy explanation
331
332
333/** Class to encapsulate software_log flatbuffer data using
334 ** => types/software_log.hpp
335 ** => types/generated/software_log_generated.h
336 **/
338{
339public:
340 // Saved input parameter value; unused
342 uint32_t m_saveSlLine;
345
346 // Parameters retrieved from flatbuffer
347 char * m_file;
348 uint32_t m_line;
349 int32_t m_errnoCode;
351
352 // Flatbuffers verifier success/failure
353 bool m_verify{false};
354
355 // flatbuffer data length; used in ::verify
356 int L;
357
358 // Constructor
359 CSoftwareLog_3(char * file_, uint32_t line_, int32_t errnoCode_, char * explanation_) {
360 // Save input parameters
361 m_saveSlFile = file_;
362 m_saveSlLine = line_;
363 m_saveSlErrnoCode = errnoCode_;
364 m_saveSlExplanation = explanation_;
365
366 // Create the flatbuffer messageT using the input parameters
367 auto sl = MagAOX::logger::software_log::messageT(file_, line_, errnoCode_, explanation_);
368
369 // Retrieve flatbuffer pointer (if not an empty_log type) and length
370 void* buffPtr = sl.builder.GetBufferPointer();
372
373 // Retrieve the flatbuffer parameters for Catch2 comparison below
374 size_t fileStrLen = strlen(MagAOX::logger::GetSoftware_log_fb(buffPtr)->file()->c_str()) + 1;
375 m_file = (char *) malloc(fileStrLen);
376 strncpy(m_file, MagAOX::logger::GetSoftware_log_fb(buffPtr)->file()->c_str(), fileStrLen);
378 m_errnoCode = MagAOX::logger::GetSoftware_log_fb(buffPtr)->errnoCode();
379 size_t explanationStrLen = strlen(MagAOX::logger::GetSoftware_log_fb(buffPtr)->explanation()->c_str()) + 1;
380 m_explanation = (char *) malloc(explanationStrLen);
381 strncpy(m_explanation, MagAOX::logger::GetSoftware_log_fb(buffPtr)->explanation()->c_str(), explanationStrLen);
382
383 // Run the software_log verifier
384 m_verify = verify(sl);
385 }
386
387 // Run the flatbuffer Verifier for this log type
388 // - requires bufferPtrT (shared_ptr<char*>) to full log entry
389 // comprising log header plus flatbuffer log message
391
392 // Timestamp, prioriy (use nominal value here)
393 flatlogs::timespecX tsx{0,0};
395
396 // Create full log: log header(*); log message (+)
397 // * Log level (priority)
398 // * Event code (implicit in <MagAOX::logger::type>)
399 // * Timestamp
400 // * Message size (variable length; 1, 2, or 8 bytes)
401 // + Message (variable length)
402
403 // N.G. allocates space and writes pointer value to logBuffer
404 flatlogs::bufferPtrT logBuffer;
405 flatlogs::logHeader::createLog<MagAOX::logger::software_notice>(logBuffer
406 , tsx, msg
407 , prio);
408 // Run full log through flatbuffer Verifier
409 return MagAOX::logger::software_log::verify(logBuffer,L);
410 }
411};
412
413SCENARIO( "Create software_log 3", "[a log item]")
414{
415 GIVEN("a software_log log code")
416 {
417 WHEN("random values for fields")
418 {
419 // Create flatbuffer
421 // Compare flatbuffer parameters
422 REQUIRE(strcmp(sl.m_file, softwareLogFile_3) == 0);
423 REQUIRE(sl.m_line == softwareLogLine_3);
424 REQUIRE(sl.m_errnoCode == softwareLogErrnoCode_3);
425 REQUIRE(strcmp(sl.m_explanation, softwareLogExplanation_3) == 0);
426 REQUIRE(sl.m_verify);
427 }
428 }
429}
430
431const char * softwareLogFile_4 = "d950vv9n35"; // dummy file
432const uint32_t softwareLogLine_4 = 4196231796; // dummy line
433const int32_t softwareLogErrnoCode_4 = -1595762337; // dummy errnoCode
434const std::string softwareLogExplanation_4 = "yoy6ljpmx8"; // dummy explanation
435
436
437/** Class to encapsulate software_log flatbuffer data using
438 ** => types/software_log.hpp
439 ** => types/generated/software_log_generated.h
440 **/
442{
443public:
444 // Saved input parameter value; unused
446 uint32_t m_saveSlLine;
449
450 // Parameters retrieved from flatbuffer
451 char * m_file;
452 uint32_t m_line;
453 int32_t m_errnoCode;
454 std::string m_explanation;
455
456 // Flatbuffers verifier success/failure
457 bool m_verify{false};
458
459 // flatbuffer data length; used in ::verify
460 int L;
461
462 // Constructor
463 CSoftwareLog_4(char * file_, uint32_t line_, int32_t errnoCode_, std::string explanation_) {
464 // Save input parameters
465 m_saveSlFile = file_;
466 m_saveSlLine = line_;
467 m_saveSlErrnoCode = errnoCode_;
468 m_saveSlExplanation = explanation_;
469
470 // Create the flatbuffer messageT using the input parameters
471 auto sl = MagAOX::logger::software_log::messageT(file_, line_, errnoCode_, explanation_);
472
473 // Retrieve flatbuffer pointer (if not an empty_log type) and length
474 void* buffPtr = sl.builder.GetBufferPointer();
476
477 // Retrieve the flatbuffer parameters for Catch2 comparison below
478 size_t fileStrLen = strlen(MagAOX::logger::GetSoftware_log_fb(buffPtr)->file()->c_str()) + 1;
479 m_file = (char *) malloc(fileStrLen);
480 strncpy(m_file, MagAOX::logger::GetSoftware_log_fb(buffPtr)->file()->c_str(), fileStrLen);
482 m_errnoCode = MagAOX::logger::GetSoftware_log_fb(buffPtr)->errnoCode();
483 m_explanation = std::string(MagAOX::logger::GetSoftware_log_fb(buffPtr)->explanation()->c_str());
484
485 // Run the software_log verifier
486 m_verify = verify(sl);
487 }
488
489 // Run the flatbuffer Verifier for this log type
490 // - requires bufferPtrT (shared_ptr<char*>) to full log entry
491 // comprising log header plus flatbuffer log message
493
494 // Timestamp, prioriy (use nominal value here)
495 flatlogs::timespecX tsx{0,0};
497
498 // Create full log: log header(*); log message (+)
499 // * Log level (priority)
500 // * Event code (implicit in <MagAOX::logger::type>)
501 // * Timestamp
502 // * Message size (variable length; 1, 2, or 8 bytes)
503 // + Message (variable length)
504
505 // N.G. allocates space and writes pointer value to logBuffer
506 flatlogs::bufferPtrT logBuffer;
507 flatlogs::logHeader::createLog<MagAOX::logger::software_notice>(logBuffer
508 , tsx, msg
509 , prio);
510 // Run full log through flatbuffer Verifier
511 return MagAOX::logger::software_log::verify(logBuffer,L);
512 }
513};
514
515SCENARIO( "Create software_log 4", "[a log item]")
516{
517 GIVEN("a software_log log code")
518 {
519 WHEN("random values for fields")
520 {
521 // Create flatbuffer
523 // Compare flatbuffer parameters
524 REQUIRE(strcmp(sl.m_file, softwareLogFile_4) == 0);
525 REQUIRE(sl.m_line == softwareLogLine_4);
526 REQUIRE(sl.m_errnoCode == softwareLogErrnoCode_4);
528 REQUIRE(sl.m_verify);
529 }
530 }
531}
532
533const char * softwareLogFile_5 = "9lwfgwcepv"; // dummy file
534const uint32_t softwareLogLine_5 = 3686290464; // dummy line
535const std::string softwareLogExplanation_5 = "9fykbkt3nz"; // dummy explanation
536
537
538/** Class to encapsulate software_log flatbuffer data using
539 ** => types/software_log.hpp
540 ** => types/generated/software_log_generated.h
541 **/
543{
544public:
545 // Saved input parameter value; unused
547 uint32_t m_saveSlLine;
549
550 // Parameters retrieved from flatbuffer
551 char * m_file;
552 uint32_t m_line;
553 std::string m_explanation;
554
555 // Flatbuffers verifier success/failure
556 bool m_verify{false};
557
558 // flatbuffer data length; used in ::verify
559 int L;
560
561 // Constructor
562 CSoftwareLog_5(char * file_, uint32_t line_, std::string explanation_) {
563 // Save input parameters
564 m_saveSlFile = file_;
565 m_saveSlLine = line_;
566 m_saveSlExplanation = explanation_;
567
568 // Create the flatbuffer messageT using the input parameters
569 auto sl = MagAOX::logger::software_log::messageT(file_, line_, explanation_);
570
571 // Retrieve flatbuffer pointer (if not an empty_log type) and length
572 void* buffPtr = sl.builder.GetBufferPointer();
574
575 // Retrieve the flatbuffer parameters for Catch2 comparison below
576 size_t fileStrLen = strlen(MagAOX::logger::GetSoftware_log_fb(buffPtr)->file()->c_str()) + 1;
577 m_file = (char *) malloc(fileStrLen);
578 strncpy(m_file, MagAOX::logger::GetSoftware_log_fb(buffPtr)->file()->c_str(), fileStrLen);
580 m_explanation = std::string(MagAOX::logger::GetSoftware_log_fb(buffPtr)->explanation()->c_str());
581
582 // Run the software_log verifier
583 m_verify = verify(sl);
584 }
585
586 // Run the flatbuffer Verifier for this log type
587 // - requires bufferPtrT (shared_ptr<char*>) to full log entry
588 // comprising log header plus flatbuffer log message
590
591 // Timestamp, prioriy (use nominal value here)
592 flatlogs::timespecX tsx{0,0};
594
595 // Create full log: log header(*); log message (+)
596 // * Log level (priority)
597 // * Event code (implicit in <MagAOX::logger::type>)
598 // * Timestamp
599 // * Message size (variable length; 1, 2, or 8 bytes)
600 // + Message (variable length)
601
602 // N.G. allocates space and writes pointer value to logBuffer
603 flatlogs::bufferPtrT logBuffer;
604 flatlogs::logHeader::createLog<MagAOX::logger::software_notice>(logBuffer
605 , tsx, msg
606 , prio);
607 // Run full log through flatbuffer Verifier
608 return MagAOX::logger::software_log::verify(logBuffer,L);
609 }
610};
611
612SCENARIO( "Create software_log 5", "[a log item]")
613{
614 GIVEN("a software_log log code")
615 {
616 WHEN("random values for fields")
617 {
618 // Create flatbuffer
620 // Compare flatbuffer parameters
621 REQUIRE(strcmp(sl.m_file, softwareLogFile_5) == 0);
622 REQUIRE(sl.m_line == softwareLogLine_5);
624 REQUIRE(sl.m_verify);
625 }
626 }
627}
628
629const char * softwareLogFile_6 = "371rmso7it"; // dummy file
630const uint32_t softwareLogLine_6 = 3010980424; // dummy line
631
632
633/** Class to encapsulate software_log flatbuffer data using
634 ** => types/software_log.hpp
635 ** => types/generated/software_log_generated.h
636 **/
638{
639public:
640 // Saved input parameter value; unused
642 uint32_t m_saveSlLine;
643
644 // Parameters retrieved from flatbuffer
645 char * m_file;
646 uint32_t m_line;
647
648 // Flatbuffers verifier success/failure
649 bool m_verify{false};
650
651 // flatbuffer data length; used in ::verify
652 int L;
653
654 // Constructor
655 CSoftwareLog_6(char * file_, uint32_t line_) {
656 // Save input parameters
657 m_saveSlFile = file_;
658 m_saveSlLine = line_;
659
660 // Create the flatbuffer messageT using the input parameters
661 auto sl = MagAOX::logger::software_log::messageT(file_, line_);
662
663 // Retrieve flatbuffer pointer (if not an empty_log type) and length
664 void* buffPtr = sl.builder.GetBufferPointer();
666
667 // Retrieve the flatbuffer parameters for Catch2 comparison below
668 size_t fileStrLen = strlen(MagAOX::logger::GetSoftware_log_fb(buffPtr)->file()->c_str()) + 1;
669 m_file = (char *) malloc(fileStrLen);
670 strncpy(m_file, MagAOX::logger::GetSoftware_log_fb(buffPtr)->file()->c_str(), fileStrLen);
672
673 // Run the software_log verifier
674 m_verify = verify(sl);
675 }
676
677 // Run the flatbuffer Verifier for this log type
678 // - requires bufferPtrT (shared_ptr<char*>) to full log entry
679 // comprising log header plus flatbuffer log message
681
682 // Timestamp, prioriy (use nominal value here)
683 flatlogs::timespecX tsx{0,0};
685
686 // Create full log: log header(*); log message (+)
687 // * Log level (priority)
688 // * Event code (implicit in <MagAOX::logger::type>)
689 // * Timestamp
690 // * Message size (variable length; 1, 2, or 8 bytes)
691 // + Message (variable length)
692
693 // N.G. allocates space and writes pointer value to logBuffer
694 flatlogs::bufferPtrT logBuffer;
695 flatlogs::logHeader::createLog<MagAOX::logger::software_notice>(logBuffer
696 , tsx, msg
697 , prio);
698 // Run full log through flatbuffer Verifier
699 return MagAOX::logger::software_log::verify(logBuffer,L);
700 }
701};
702
703SCENARIO( "Create software_log 6", "[a log item]")
704{
705 GIVEN("a software_log log code")
706 {
707 WHEN("random values for fields")
708 {
709 // Create flatbuffer
711 // Compare flatbuffer parameters
712 REQUIRE(strcmp(sl.m_file, softwareLogFile_6) == 0);
713 REQUIRE(sl.m_line == softwareLogLine_6);
714 REQUIRE(sl.m_verify);
715 }
716 }
717}
718
719
CSoftwareLog_0(char *file_, uint32_t line_, int32_t errnoCode_, int32_t otherCode_, char *explanation_)
bool verify(const typename MagAOX::logger::software_log::messageT &msg)
bool verify(const typename MagAOX::logger::software_log::messageT &msg)
CSoftwareLog_1(char *file_, uint32_t line_, int32_t errnoCode_, int32_t otherCode_, std::string explanation_)
CSoftwareLog_2(char *file_, uint32_t line_, int32_t errnoCode_)
bool verify(const typename MagAOX::logger::software_log::messageT &msg)
bool verify(const typename MagAOX::logger::software_log::messageT &msg)
CSoftwareLog_3(char *file_, uint32_t line_, int32_t errnoCode_, char *explanation_)
CSoftwareLog_4(char *file_, uint32_t line_, int32_t errnoCode_, std::string explanation_)
bool verify(const typename MagAOX::logger::software_log::messageT &msg)
bool verify(const typename MagAOX::logger::software_log::messageT &msg)
CSoftwareLog_5(char *file_, uint32_t line_, std::string explanation_)
bool verify(const typename MagAOX::logger::software_log::messageT &msg)
CSoftwareLog_6(char *file_, uint32_t line_)
int8_t logPrioT
The type of the log priority code.
Definition logDefs.hpp:21
std::shared_ptr< char > bufferPtrT
The log entry buffer smart pointer.
Definition logHeader.hpp:58
const MagAOX::logger::Software_log_fb * GetSoftware_log_fb(const void *buf)
static constexpr logPrioT LOG_DEFAULT
Used to denote "use the default level for this log type".
const int32_t softwareLogErrnoCode_0
const char * softwareLogFile_1
const char * softwareLogFile_4
const uint32_t softwareLogLine_6
const int32_t softwareLogErrnoCode_4
const std::string softwareLogExplanation_4
const char * softwareLogExplanation_3
const int32_t softwareLogErrnoCode_1
const char * softwareLogFile_3
const std::string softwareLogExplanation_1
const char * softwareLogExplanation_0
const char * softwareLogFile_6
const uint32_t softwareLogLine_1
const uint32_t softwareLogLine_0
const std::string softwareLogExplanation_5
const uint32_t softwareLogLine_5
const int32_t softwareLogErrnoCode_3
const char * softwareLogFile_2
const char * softwareLogFile_0
const int32_t softwareLogOtherCode_0
SCENARIO("Create software_log 0", "[a log item]")
const uint32_t softwareLogLine_4
const char * softwareLogFile_5
const int32_t softwareLogOtherCode_1
const uint32_t softwareLogLine_3
const uint32_t softwareLogLine_2
const int32_t softwareLogErrnoCode_2
static flatlogs::msgLenT length(const fbMessage &msg)
Get the length of the message.
static bool verify(flatlogs::bufferPtrT &logBuff, flatlogs::msgLenT len)
A fixed-width timespec structure.
Definition timespecX.hpp:35