| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119 |
- /*******************************************************************************
- * Copyright (c) 2009, Rockwell Automation, Inc.
- * All rights reserved.
- *
- ******************************************************************************/
- #include <CppUTest/TestHarness.h>
- #include <stdint.h>
- #include <string.h>
- extern "C" {
- #include "cipepath.h"
- }
- TEST_GROUP(CipEpath) {
- };
- /** Segment type tests **/
- TEST(CipEpath, GetSegmentTypePortSegment) {
- const char message[] = {0x00};
- SegmentType segment_type = GetPathSegmentType(message);
- CHECK_EQUAL(kSegmentTypePortSegment, segment_type);
- }
- TEST(CipEpath, GetSegmentTypeLogicalSegment) {
- const char message[] = {0x20};
- SegmentType segment_type = GetPathSegmentType(message);
- CHECK_EQUAL(kSegmentTypeLogicalSegment, segment_type);
- }
- TEST(CipEpath, GetSegmentTypeNetworkSegment) {
- const char message[] = {0x40};
- SegmentType segment_type = GetPathSegmentType(message);
- CHECK_EQUAL(kSegmentTypeNetworkSegment, segment_type);
- }
- TEST(CipEpath, GetSegmentTypeSymbolicSegment) {
- const char message[] = {0x60};
- SegmentType segment_type = GetPathSegmentType(message);
- CHECK_EQUAL(kSegmentTypeSymbolicSegment, segment_type);
- }
- TEST(CipEpath, GetSegmentTypeDataSegment) {
- const char message[] = {0x80};
- SegmentType segment_type = GetPathSegmentType(message);
- CHECK_EQUAL(kSegmentTypeDataSegment, segment_type);
- }
- TEST(CipEpath, GetSegmentTypeDataTypeConstructed) {
- const char message[] = {0xA0};
- SegmentType segment_type = GetPathSegmentType(message);
- CHECK_EQUAL(kSegmentTypeDataTypeConstructed, segment_type);
- }
- TEST(CipEpath, GetSegmentTypeDataTypeElementary) {
- const char message[] = {0xC0};
- SegmentType segment_type = GetPathSegmentType(message);
- CHECK_EQUAL(kSegmentTypeDataTypeElementary, segment_type);
- }
- TEST(CipEpath, GetSegmentTypeReserved) {
- const char message[] = {0xE0};
- SegmentType segment_type = GetPathSegmentType(message);
- CHECK_EQUAL(kSegmentTypeReserved, segment_type);
- }
- /** Port segment tests **/
- TEST(CipEpath, GetPortSegmentExtendedAddressSizeTrue) {
- const char message[] = {0x10};
- bool extended_address = GetPathPortSegmentExtendedLinkAddressSizeBit(message);
- CHECK_EQUAL(true, extended_address);
- }
- TEST(CipEpath, GetPortSegmentExtendedAddressSizeFalse) {
- const char message[] = {0x00};
- bool extended_address = GetPathPortSegmentExtendedLinkAddressSizeBit(message);
- CHECK_EQUAL(false, extended_address);
- }
- TEST(CipEpath, GetPortSegmentPortIdentifier) {
- const char message[] = {0x0F};
- unsigned int port = GetPathPortSegmentPortIdentifier(message);
- unsigned int mes = (unsigned int)(message[0]);
- CHECK_EQUAL(15, mes);
- }
- TEST(CipEpath, SetPortSegmentPortIdentifier) {
- char message[] = {0x00};
- SetPathPortSegmentPortIdentifier(15, message);
- CHECK_EQUAL(15, (unsigned int)(message[0]));
- }
- TEST(CipEpath, GetPortSegmentLinkAddressSize) {
- const char message[] = {0x10,0x04};
- unsigned int size = GetPathPortSegmentLinkAddressSize(message);
- CHECK_EQUAL(4, size);
- }
- TEST(CipEpath, GetPortSegmentExtendedPortNumberNoExtendedAddress) {
- const char message[] = {0x0F, 0x22, 0x64};
- unsigned int extended_port = GetPathPortSegmentExtendedPortNumber(message);
- CHECK_EQUAL(25634, extended_port);
- }
- TEST(CipEpath, GetPortSegmentExtendedPortNumberWithExtendedAddress) {
- const char message[] = {0x1F, 0x00, 0x22, 0x64};
- unsigned int extended_port = GetPathPortSegmentExtendedPortNumber(message);
- CHECK_EQUAL(25634, extended_port);
- }
- TEST(CipEpath, SetPortSegmentExtendedPortNoExtendedAddress) {
- char message[] = {0x00, 0x00, 0x00};
- const char expected_message[] = {0x0F, 0x22, 0x64};
- SetPathPortSegmentExtendedPortIdentifier((unsigned int)25634, message);
- MEMCMP_EQUAL(expected_message, message, 3);
- }
|