mirror of
https://github.com/espressif/openthread.git
synced 2026-07-30 07:37:46 +00:00
[tests] update Mac::Frame unit test to check footer and frame length (#4883)
This commit is contained in:
committed by
Jonathan Hui
parent
3921409859
commit
7e5dce0542
@@ -237,36 +237,37 @@ void TestMacHeader(void)
|
||||
uint16_t fcf;
|
||||
uint8_t secCtl;
|
||||
uint8_t headerLength;
|
||||
uint8_t footerLength;
|
||||
} tests[] = {
|
||||
{Mac::Frame::kFcfFrameVersion2006 | Mac::Frame::kFcfDstAddrNone | Mac::Frame::kFcfSrcAddrNone, 0, 3},
|
||||
{Mac::Frame::kFcfFrameVersion2006 | Mac::Frame::kFcfDstAddrNone | Mac::Frame::kFcfSrcAddrShort, 0, 7},
|
||||
{Mac::Frame::kFcfFrameVersion2006 | Mac::Frame::kFcfDstAddrNone | Mac::Frame::kFcfSrcAddrExt, 0, 13},
|
||||
{Mac::Frame::kFcfFrameVersion2006 | Mac::Frame::kFcfDstAddrShort | Mac::Frame::kFcfSrcAddrNone, 0, 7},
|
||||
{Mac::Frame::kFcfFrameVersion2006 | Mac::Frame::kFcfDstAddrExt | Mac::Frame::kFcfSrcAddrNone, 0, 13},
|
||||
{Mac::Frame::kFcfFrameVersion2006 | Mac::Frame::kFcfDstAddrShort | Mac::Frame::kFcfSrcAddrShort, 0, 11},
|
||||
{Mac::Frame::kFcfFrameVersion2006 | Mac::Frame::kFcfDstAddrShort | Mac::Frame::kFcfSrcAddrExt, 0, 17},
|
||||
{Mac::Frame::kFcfFrameVersion2006 | Mac::Frame::kFcfDstAddrExt | Mac::Frame::kFcfSrcAddrShort, 0, 17},
|
||||
{Mac::Frame::kFcfFrameVersion2006 | Mac::Frame::kFcfDstAddrExt | Mac::Frame::kFcfSrcAddrExt, 0, 23},
|
||||
{Mac::Frame::kFcfFrameVersion2006 | Mac::Frame::kFcfDstAddrNone | Mac::Frame::kFcfSrcAddrNone, 0, 3, 2},
|
||||
{Mac::Frame::kFcfFrameVersion2006 | Mac::Frame::kFcfDstAddrNone | Mac::Frame::kFcfSrcAddrShort, 0, 7, 2},
|
||||
{Mac::Frame::kFcfFrameVersion2006 | Mac::Frame::kFcfDstAddrNone | Mac::Frame::kFcfSrcAddrExt, 0, 13, 2},
|
||||
{Mac::Frame::kFcfFrameVersion2006 | Mac::Frame::kFcfDstAddrShort | Mac::Frame::kFcfSrcAddrNone, 0, 7, 2},
|
||||
{Mac::Frame::kFcfFrameVersion2006 | Mac::Frame::kFcfDstAddrExt | Mac::Frame::kFcfSrcAddrNone, 0, 13, 2},
|
||||
{Mac::Frame::kFcfFrameVersion2006 | Mac::Frame::kFcfDstAddrShort | Mac::Frame::kFcfSrcAddrShort, 0, 11, 2},
|
||||
{Mac::Frame::kFcfFrameVersion2006 | Mac::Frame::kFcfDstAddrShort | Mac::Frame::kFcfSrcAddrExt, 0, 17, 2},
|
||||
{Mac::Frame::kFcfFrameVersion2006 | Mac::Frame::kFcfDstAddrExt | Mac::Frame::kFcfSrcAddrShort, 0, 17, 2},
|
||||
{Mac::Frame::kFcfFrameVersion2006 | Mac::Frame::kFcfDstAddrExt | Mac::Frame::kFcfSrcAddrExt, 0, 23, 2},
|
||||
|
||||
{Mac::Frame::kFcfFrameVersion2006 | Mac::Frame::kFcfDstAddrShort | Mac::Frame::kFcfSrcAddrShort |
|
||||
Mac::Frame::kFcfPanidCompression,
|
||||
0, 9},
|
||||
0, 9, 2},
|
||||
{Mac::Frame::kFcfFrameVersion2006 | Mac::Frame::kFcfDstAddrShort | Mac::Frame::kFcfSrcAddrExt |
|
||||
Mac::Frame::kFcfPanidCompression,
|
||||
0, 15},
|
||||
0, 15, 2},
|
||||
{Mac::Frame::kFcfFrameVersion2006 | Mac::Frame::kFcfDstAddrExt | Mac::Frame::kFcfSrcAddrShort |
|
||||
Mac::Frame::kFcfPanidCompression,
|
||||
0, 15},
|
||||
0, 15, 2},
|
||||
{Mac::Frame::kFcfFrameVersion2006 | Mac::Frame::kFcfDstAddrExt | Mac::Frame::kFcfSrcAddrExt |
|
||||
Mac::Frame::kFcfPanidCompression,
|
||||
0, 21},
|
||||
0, 21, 2},
|
||||
|
||||
{Mac::Frame::kFcfFrameVersion2006 | Mac::Frame::kFcfDstAddrShort | Mac::Frame::kFcfSrcAddrShort |
|
||||
Mac::Frame::kFcfPanidCompression | Mac::Frame::kFcfSecurityEnabled,
|
||||
Mac::Frame::kSecMic32 | Mac::Frame::kKeyIdMode1, 15},
|
||||
Mac::Frame::kSecMic32 | Mac::Frame::kKeyIdMode1, 15, 6},
|
||||
{Mac::Frame::kFcfFrameVersion2006 | Mac::Frame::kFcfDstAddrShort | Mac::Frame::kFcfSrcAddrShort |
|
||||
Mac::Frame::kFcfPanidCompression | Mac::Frame::kFcfSecurityEnabled,
|
||||
Mac::Frame::kSecMic32 | Mac::Frame::kKeyIdMode2, 19},
|
||||
Mac::Frame::kSecMic32 | Mac::Frame::kKeyIdMode2, 19, 6},
|
||||
};
|
||||
|
||||
for (unsigned i = 0; i < OT_ARRAY_LENGTH(tests); i++)
|
||||
@@ -274,11 +275,14 @@ void TestMacHeader(void)
|
||||
uint8_t psdu[Mac::Frame::kMtu];
|
||||
Mac::TxFrame frame;
|
||||
|
||||
frame.mPsdu = psdu;
|
||||
frame.mPsdu = psdu;
|
||||
frame.mLength = 0;
|
||||
|
||||
frame.InitMacHeader(tests[i].fcf, tests[i].secCtl);
|
||||
printf("%d\n", frame.GetHeaderLength());
|
||||
|
||||
VerifyOrQuit(frame.GetHeaderLength() == tests[i].headerLength, "MacHeader test failed");
|
||||
VerifyOrQuit(frame.GetFooterLength() == tests[i].footerLength, "MacHeader test failed");
|
||||
VerifyOrQuit(frame.GetLength() == tests[i].headerLength + tests[i].footerLength, "MacHeader test failed");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user