F´ Flight Software - C/C++ Documentation
NASA-v1.6.0
A framework for building embedded system applications to NASA flight quality standards.
Toggle main menu visibility
Main Page
Related Pages
Namespaces
Namespace List
Namespace Members
All
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
r
s
t
u
v
w
z
Functions
a
b
c
d
e
f
g
h
i
j
l
m
o
p
r
s
t
u
v
w
Variables
b
c
f
g
k
l
m
o
p
r
s
t
u
w
z
Typedefs
a
b
c
d
e
f
g
h
i
l
n
o
p
r
s
t
u
v
w
Enumerations
Enumerator
a
b
f
h
i
k
n
o
p
s
v
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
:
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
~
Functions
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
q
r
s
t
u
v
w
x
z
~
Variables
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
Typedefs
a
b
c
e
f
i
m
r
s
t
w
Enumerations
b
c
d
f
g
h
m
o
q
r
s
t
u
w
Enumerator
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
Related Symbols
:
a
b
c
d
f
g
h
l
p
q
r
s
t
Files
File List
File Members
All
_
a
b
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
u
v
w
Functions
f
g
i
m
p
r
s
t
u
Variables
_
b
c
f
g
i
l
p
r
s
w
Typedefs
a
b
c
e
f
i
n
p
s
t
u
Enumerations
Enumerator
a
b
c
f
g
h
p
r
s
t
Macros
_
a
c
d
e
f
g
h
i
l
m
o
p
r
s
t
u
v
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
Loading...
Searching...
No Matches
TlmTests.hpp
Go to the documentation of this file.
1
// ======================================================================
2
// \title TlmTests.hpp
3
// \author T. Chieu
4
// \brief hpp file for telemetry tests
5
//
6
// \copyright
7
// Copyright (C) 2009-2023 California Institute of Technology.
8
// ALL RIGHTS RESERVED. United States Government Sponsorship
9
// acknowledged.
10
//
11
// ======================================================================
12
13
// ----------------------------------------------------------------------
14
// Telemetry test declarations
15
// ----------------------------------------------------------------------
16
17
#define TLM_TEST_DECL(TYPE) void testTelemetry(NATIVE_INT_TYPE portNum, FppTest::Types::TYPE##Param& data);
18
19
#define TLM_TEST_DECLS \
20
TLM_TEST_DECL(U32) \
21
TLM_TEST_DECL(F32) \
22
TLM_TEST_DECL(TlmString) \
23
TLM_TEST_DECL(Enum) \
24
TLM_TEST_DECL(Array) \
25
TLM_TEST_DECL(Struct)
19
#define TLM_TEST_DECLS \
…
26
27
// ----------------------------------------------------------------------
28
// Telemetry test definitions
29
// ----------------------------------------------------------------------
30
31
#define TLM_TEST_DEF(TYPE) \
32
void Tester ::testTelemetry(NATIVE_INT_TYPE portNum, FppTest::Types::TYPE##Param& data) { \
33
ASSERT_TRUE(component.isConnected_tlmOut_OutputPort(portNum)); \
34
\
35
component.tlmWrite_Channel##TYPE(data.args.val); \
36
\
37
ASSERT_TLM_SIZE(1); \
38
ASSERT_TLM_Channel##TYPE##_SIZE(1); \
39
ASSERT_TLM_Channel##TYPE(0, data.args.val); \
40
\
41
Fw::Time time = Fw::ZERO_TIME; \
42
component.tlmWrite_Channel##TYPE(data.args.val, time); \
43
\
44
ASSERT_TLM_SIZE(2); \
45
ASSERT_TLM_Channel##TYPE##_SIZE(2); \
46
ASSERT_TLM_Channel##TYPE(0, data.args.val); \
47
}
31
#define TLM_TEST_DEF(TYPE) \
…
48
49
#define TLM_TEST_DEFS \
50
TLM_TEST_DEF(U32) \
51
TLM_TEST_DEF(F32) \
52
\
53
void Tester ::testTelemetry(NATIVE_INT_TYPE portNum, FppTest::Types::TlmStringParam& data) { \
54
ASSERT_TRUE(component.isConnected_tlmOut_OutputPort(portNum)); \
55
\
56
component.tlmWrite_ChannelString(data.args.val); \
57
\
58
ASSERT_TLM_SIZE(1); \
59
ASSERT_TLM_ChannelString_SIZE(1); \
60
ASSERT_TLM_ChannelString(0, data.args.val.toChar()); \
61
\
62
/* Test unchanged value */
\
63
component.tlmWrite_ChannelString(data.args.val); \
64
\
65
ASSERT_TLM_SIZE(1); \
66
ASSERT_TLM_ChannelString_SIZE(1); \
67
\
68
FppTest::Types::TlmStringParam data2; \
69
while (data2.args.val == data.args.val) { \
70
data2 = FppTest::Types::TlmStringParam(); \
71
} \
72
\
73
Fw::Time time = Fw::ZERO_TIME; \
74
component.tlmWrite_ChannelString(data2.args.val, time); \
75
\
76
ASSERT_TLM_SIZE(2); \
77
ASSERT_TLM_ChannelString_SIZE(2); \
78
ASSERT_TLM_ChannelString(1, data2.args.val.toChar()); \
79
} \
80
\
81
TLM_TEST_DEF(Enum) \
82
TLM_TEST_DEF(Array) \
83
TLM_TEST_DEF(Struct)
49
#define TLM_TEST_DEFS \
…
FppTest
component
tests
TlmTests.hpp
Generated by
1.10.0