PROFINET IO Controller Stack 1.0.0
Modern C++ implementation of a PROFINET IO Controller stack
Loading...
Searching...
No Matches
test_wire.cpp File Reference

Unit tests for the generic PROFINET wire reader and writers. More...

#include <gtest/gtest.h>
#include <array>
#include <cstdint>
#include <string>
#include <vector>
#include "profinet/wire.h"
+ Include dependency graph for test_wire.cpp:

Go to the source code of this file.

Namespaces

namespace  profinet
 
namespace  profinet::wire
 

Functions

 profinet::wire::TEST (WireWriterTest, PutBigEndianU8)
 
 profinet::wire::TEST (WireWriterTest, PutBigEndianU16)
 
 profinet::wire::TEST (WireWriterTest, PutBigEndianU32)
 
 profinet::wire::TEST (WireWriterTest, PutBigEndianU64)
 
 profinet::wire::TEST (WireWriterTest, PutBigEndianZero)
 
 profinet::wire::TEST (WireWriterTest, PutBigEndianMaximumU32)
 
 profinet::wire::TEST (WireWriterTest, PutBigEndianAppends)
 
 profinet::wire::TEST (WireWriterTest, PutLittleEndianU8)
 
 profinet::wire::TEST (WireWriterTest, PutLittleEndianU16)
 
 profinet::wire::TEST (WireWriterTest, PutLittleEndianU32)
 
 profinet::wire::TEST (WireWriterTest, PutLittleEndianU64)
 
 profinet::wire::TEST (WireWriterTest, PutLittleEndianZero)
 
 profinet::wire::TEST (WireWriterTest, PutLittleEndianMaximumU32)
 
 profinet::wire::TEST (WireWriterTest, PutLittleEndianAppends)
 
 profinet::wire::TEST (WireWriterTest, PutLittleEndianPointerU16)
 
 profinet::wire::TEST (WireWriterTest, PutLittleEndianPointerU32)
 
 profinet::wire::TEST (WireWriterTest, PutU8)
 
 profinet::wire::TEST (WireWriterTest, PutU16)
 
 profinet::wire::TEST (WireWriterTest, PutU32)
 
 profinet::wire::TEST (WireWriterTest, PutBytes)
 
 profinet::wire::TEST (WireWriterTest, PutBytesZeroLength)
 
 profinet::wire::TEST (WireWriterTest, PutFixedArray)
 
 profinet::wire::TEST (WireWriterTest, PutFixedEmptyArray)
 
 profinet::wire::TEST (WireWriterTest, PutFixedVector)
 
 profinet::wire::TEST (WireWriterTest, PutFixedEmptyVector)
 
 profinet::wire::TEST (WireWriterTest, PutFixedString)
 
 profinet::wire::TEST (WireWriterTest, PutFixedEmptyString)
 
 profinet::wire::TEST (WireReaderTest, ReadBigEndianU8)
 
 profinet::wire::TEST (WireReaderTest, ReadBigEndianU16)
 
 profinet::wire::TEST (WireReaderTest, ReadBigEndianU32)
 
 profinet::wire::TEST (WireReaderTest, ReadBigEndianU64)
 
 profinet::wire::TEST (WireReaderTest, ReadBigEndianZero)
 
 profinet::wire::TEST (WireReaderTest, ReadBigEndianMaximumU32)
 
 profinet::wire::TEST (WireReaderTest, ReadLittleEndianU8)
 
 profinet::wire::TEST (WireReaderTest, ReadLittleEndianU16)
 
 profinet::wire::TEST (WireReaderTest, ReadLittleEndianU32)
 
 profinet::wire::TEST (WireReaderTest, ReadLittleEndianU64)
 
 profinet::wire::TEST (WireReaderTest, ReadLittleEndianZero)
 
 profinet::wire::TEST (WireReaderTest, ReadLittleEndianMaximumU32)
 
 profinet::wire::TEST (WireReaderTest, ReaderReadsU8)
 
 profinet::wire::TEST (WireReaderTest, ReaderRejectsU8PastEnd)
 
 profinet::wire::TEST (WireReaderTest, ReaderReadsBigEndianU16)
 
 profinet::wire::TEST (WireReaderTest, ReaderReadsBigEndianU32)
 
 profinet::wire::TEST (WireReaderTest, ReaderReadsLittleEndianU16)
 
 profinet::wire::TEST (WireReaderTest, ReaderReadsLittleEndianU32)
 
 profinet::wire::TEST (WireReaderTest, ReaderReadsConsecutiveLittleEndianValues)
 
 profinet::wire::TEST (WireReaderTest, ReaderMixesEndianReads)
 
 profinet::wire::TEST (WireReaderTest, ReaderRejectsLittleEndianU16PastEnd)
 
 profinet::wire::TEST (WireReaderTest, ReaderRejectsLittleEndianU32PastEnd)
 
 profinet::wire::TEST (WireReaderTest, ReaderRejectsU16PastEnd)
 
 profinet::wire::TEST (WireReaderTest, ReaderRejectsU32PastEnd)
 
 profinet::wire::TEST (WireReaderTest, ReaderReadBytes)
 
 profinet::wire::TEST (WireReaderTest, ReaderReadBytesZeroLength)
 
 profinet::wire::TEST (WireReaderTest, ReaderRejectsReadBytesPastEnd)
 
 profinet::wire::TEST (WireReaderTest, ReaderFixedArray)
 
 profinet::wire::TEST (WireReaderTest, ReaderFixedEmptyArray)
 
 profinet::wire::TEST (WireReaderTest, ReaderRejectsFixedArrayPastEnd)
 
 profinet::wire::TEST (WireReaderTest, ReaderSkip)
 
 profinet::wire::TEST (WireReaderTest, ReaderSkipZero)
 
 profinet::wire::TEST (WireReaderTest, ReaderRejectsSkipPastEnd)
 
 profinet::wire::TEST (WireReaderTest, ReaderSkipTo)
 
 profinet::wire::TEST (WireReaderTest, ReaderSkipToMovesBackwards)
 
 profinet::wire::TEST (WireReaderTest, ReaderRejectsSkipToPastEnd)
 
 profinet::wire::TEST (WireReaderTest, ReaderAllowsSkipToEnd)
 
 profinet::wire::TEST (WireReaderTest, ReaderNeedExactRemaining)
 
 profinet::wire::TEST (WireReaderTest, ReaderNeedZero)
 
 profinet::wire::TEST (WireReaderTest, ReaderCursorPointsToCurrentPosition)
 
 profinet::wire::TEST (WireReaderTest, ReaderRemainingTracksPosition)
 
 profinet::wire::TEST (WireReaderTest, ReaderRawPointerConstructor)
 
 profinet::wire::TEST (WireReaderTest, ReaderSpanConstructor)
 
 profinet::wire::TEST (WireReaderTest, ReaderEmptyVector)
 

Detailed Description

Unit tests for the generic PROFINET wire reader and writers.

Verifies big-endian and little-endian integer serialization, direct integer decoding, sequential Reader operations, fixed and variable byte extraction, cursor positioning, bounds checking, and byte-copy helpers.

These tests deliberately contain no PROFINET protocol semantics. The wire namespace provides generic byte-level functionality and is tested independently from individual protocol implementations.

Definition in file test_wire.cpp.