Bluenet  5.7.0
Bluenet, firmware for nRF52 smart home devices
Loading...
Searching...
No Matches
cs_Test.h File Reference
#include <uart/cs_UartHandler.h>
#include <cstdarg>
Include dependency graph for cs_Test.h:

Go to the source code of this file.

Macros

#define cs_write_test(...)
 
#define TEST_PUSH_DATA(form, self, expressionnamestr, expr)    cs_write_test(form, self, __PRETTY_FUNCTION__, expressionnamestr, expr)
 format: ptr_to_this,prettyfunction,valuename,content More...
 
#define TEST_PUSH_EXPR_S(self, expressionnamestr, expr)    TEST_PUSH_DATA("%x@%s@%s@%s\r\n", self, expressionnamestr, expr)
 Expression wrappers for generic expressions in non-static context. More...
 
#define TEST_PUSH_EXPR_D(self, expressionnamestr, expr)    TEST_PUSH_DATA("%x@%s@%s@%d\r\n", self, expressionnamestr, expr)
 
#define TEST_PUSH_EXPR_X(self, expressionnamestr, expr)    TEST_PUSH_DATA("%x@%s@%s@%x\r\n", self, expressionnamestr, expr)
 
#define TEST_PUSH_EXPR_B(self, expressionnamestr, expr)    TEST_PUSH_EXPR_S(self, expressionnamestr, (expr ? "True" : "False"))
 
#define TEST_PUSH_EXPR_O(self, expressionnamestr, expr)    TEST_PUSH_EXPR_D(self, expressionnamestr, OptionalUnsignedToInt(expr))
 
#define TEST_PUSH_S(self, variablename)   TEST_PUSH_EXPR_S(self, #variablename, self->variablename)
 Utiltiy wrappers for member variables. More...
 
#define TEST_PUSH_D(self, variablename)   TEST_PUSH_EXPR_D(self, #variablename, self->variablename)
 
#define TEST_PUSH_X(self, variablename)   TEST_PUSH_EXPR_X(self, #variablename, self->variablename)
 
#define TEST_PUSH_B(self, variablename)   TEST_PUSH_EXPR_B(self, #variablename, self->variablename)
 
#define TEST_PUSH_O(self, variablename)   TEST_PUSH_EXPR_O(self, #variablename, self->variablename)
 
#define TEST_PUSH_STATIC_S(context, expressionnamestr, expr)    TEST_PUSH_DATA("%s@%s@%s@%s\r\n", context, expressionnamestr, expr)
 Utility wrappers for static stuff. More...
 
#define TEST_PUSH_STATIC_D(context, expressionnamestr, expr)    TEST_PUSH_DATA("%s@%s@%s@%d\r\n", context, expressionnamestr, expr)
 
#define TEST_PUSH_STATIC_X(context, expressionnamestr, expr)    TEST_PUSH_DATA("%s@%s@%s@%x\r\n", context, expressionnamestr, expr)
 
#define TEST_PUSH_STATIC_B(context, expressionnamestr, expr)    TEST_PUSH_DATA("%s@%s@%s@%s\r\n", context, expressionnamestr, (expr ? "True" : "False"))
 

Functions

template<class U >
long int OptionalUnsignedToInt (std::optional< U > opt)
 Cast optional into integer for easy printing. More...
 

Macro Definition Documentation

◆ cs_write_test

#define cs_write_test (   ...)

◆ TEST_PUSH_B

#define TEST_PUSH_B (   self,
  variablename 
)    TEST_PUSH_EXPR_B(self, #variablename, self->variablename)

◆ TEST_PUSH_D

#define TEST_PUSH_D (   self,
  variablename 
)    TEST_PUSH_EXPR_D(self, #variablename, self->variablename)

◆ TEST_PUSH_DATA

#define TEST_PUSH_DATA (   form,
  self,
  expressionnamestr,
  expr 
)     cs_write_test(form, self, __PRETTY_FUNCTION__, expressionnamestr, expr)

format: ptr_to_this,prettyfunction,valuename,content

◆ TEST_PUSH_EXPR_B

#define TEST_PUSH_EXPR_B (   self,
  expressionnamestr,
  expr 
)     TEST_PUSH_EXPR_S(self, expressionnamestr, (expr ? "True" : "False"))

◆ TEST_PUSH_EXPR_D

#define TEST_PUSH_EXPR_D (   self,
  expressionnamestr,
  expr 
)     TEST_PUSH_DATA("%x@%s@%s@%d\r\n", self, expressionnamestr, expr)

◆ TEST_PUSH_EXPR_O

#define TEST_PUSH_EXPR_O (   self,
  expressionnamestr,
  expr 
)     TEST_PUSH_EXPR_D(self, expressionnamestr, OptionalUnsignedToInt(expr))

◆ TEST_PUSH_EXPR_S

#define TEST_PUSH_EXPR_S (   self,
  expressionnamestr,
  expr 
)     TEST_PUSH_DATA("%x@%s@%s@%s\r\n", self, expressionnamestr, expr)

Expression wrappers for generic expressions in non-static context.

◆ TEST_PUSH_EXPR_X

#define TEST_PUSH_EXPR_X (   self,
  expressionnamestr,
  expr 
)     TEST_PUSH_DATA("%x@%s@%s@%x\r\n", self, expressionnamestr, expr)

◆ TEST_PUSH_O

#define TEST_PUSH_O (   self,
  variablename 
)    TEST_PUSH_EXPR_O(self, #variablename, self->variablename)

◆ TEST_PUSH_S

#define TEST_PUSH_S (   self,
  variablename 
)    TEST_PUSH_EXPR_S(self, #variablename, self->variablename)

Utiltiy wrappers for member variables.

◆ TEST_PUSH_STATIC_B

#define TEST_PUSH_STATIC_B (   context,
  expressionnamestr,
  expr 
)     TEST_PUSH_DATA("%s@%s@%s@%s\r\n", context, expressionnamestr, (expr ? "True" : "False"))

◆ TEST_PUSH_STATIC_D

#define TEST_PUSH_STATIC_D (   context,
  expressionnamestr,
  expr 
)     TEST_PUSH_DATA("%s@%s@%s@%d\r\n", context, expressionnamestr, expr)

◆ TEST_PUSH_STATIC_S

#define TEST_PUSH_STATIC_S (   context,
  expressionnamestr,
  expr 
)     TEST_PUSH_DATA("%s@%s@%s@%s\r\n", context, expressionnamestr, expr)

Utility wrappers for static stuff.

(Use with care, may result in conflicts when multiple translation units use the same names)

◆ TEST_PUSH_STATIC_X

#define TEST_PUSH_STATIC_X (   context,
  expressionnamestr,
  expr 
)     TEST_PUSH_DATA("%s@%s@%s@%x\r\n", context, expressionnamestr, expr)

◆ TEST_PUSH_X

#define TEST_PUSH_X (   self,
  variablename 
)    TEST_PUSH_EXPR_X(self, #variablename, self->variablename)

Function Documentation

◆ OptionalUnsignedToInt()

template<class U >
long int OptionalUnsignedToInt ( std::optional< U >  opt)
inline

Cast optional into integer for easy printing.