FB_TestXmlControl  Function Block

Extends TcUnit.FB_TestSuite

Contains tests that verify the XmlControl function block methods


Variables

Name Type Description
Buffer ARRAY[0..TcUnit.GVL_Param_TcUnit.xUnitBufferSize - 1] OF BYTE

Methods

Setup PRIVATE
Implementation
// Clear buffer
MEMSET(ADR(Buffer), 0, SIZEOF(Buffer));
Test_CloseOpenTag PRIVATE
Implementation
TEST('Test_CloseOpenTag');

Setup();

XmlControl.SetBuffer(ADR(Buffer), SIZEOF(Buffer));
XmlControl.NewTag(TagName);
XmlControl.CloseTag();
MEMCPY(ADR(ActualBuffer), ADR(Buffer), SIZEOF(ActualBuffer));

AssertEquals_String(Expected := ExpectedBuffer,
                    Actual :=  ActualBuffer,
                    Message := 'Buffer does not contain expected content');

AssertEquals_String(Expected := ExpectedResult,
                    Actual :=  ActualResult,
                    Message := 'CloseTag result does not contain expected content');

TEST_FINISHED();
Test_CloseTag PRIVATE
Implementation
TEST('Test_CloseTag');

Setup();

XmlControl.SetBuffer(ADR(Buffer), SIZEOF(Buffer));
XmlControl.NewTag(TagName);
XmlControl.NewTagData('TagData');
ActualResult := XmlControl.CloseTag();
MEMCPY(ADR(ActualBuffer), ADR(Buffer), SIZEOF(ActualBuffer));

AssertEquals_String(Expected := ExpectedBuffer,
                    Actual :=  ActualBuffer,
                    Message := 'Buffer does not contain expected content');

AssertEquals_String(Expected := ExpectedResult,
                    Actual :=  ActualResult,
                    Message := 'CloseTag result does not contain expected content');
                   
TEST_FINISHED();
Test_NewComment PRIVATE
Implementation
TEST('Test_NewComment');

Setup();

XmlControl.SetBuffer(ADR(Buffer), SIZEOF(Buffer));
XmlControl.NewComment(Comment);
MEMCPY(ADR(ActualBuffer), ADR(Buffer), SIZEOF(ActualBuffer));

AssertEquals_String(Expected := ExpectedBuffer,
                    Actual :=  ActualBuffer,
                    Message := 'Buffer does not contain expected content');

TEST_FINISHED();
Test_NewParameter PRIVATE
Implementation
TEST('Test_NewParameter');

Setup();

XmlControl.SetBuffer(ADR(Buffer), SIZEOF(Buffer));
XmlControl.NewParameter(ParameterName, ParameterValue);
MEMCPY(ADR(ActualBuffer), ADR(Buffer), SIZEOF(ActualBuffer));

AssertEquals_String(Expected := ExpectedBuffer,
                    Actual :=  ActualBuffer,
                    Message := 'Buffer does not contain expected content');

TEST_FINISHED();
Test_NewTag PRIVATE
Implementation
TEST('Test_NewTag');

Setup();

XmlControl.SetBuffer(ADR(Buffer), SIZEOF(Buffer));
XmlControl.NewTag(TagName);
MEMCPY(ADR(ActualBuffer), ADR(Buffer), SIZEOF(ActualBuffer));

AssertEquals_String(Expected := ExpectedBuffer,
                    Actual :=  ActualBuffer,
                    Message := 'Buffer does not contain expected content');

TEST_FINISHED();
Test_NewTagData PRIVATE
Implementation
TEST('Test_NewTagData');

Setup();
XmlControl.SetBuffer(ADR(Buffer), SIZEOF(Buffer));
XmlControl.NewTag(TagName);
XmlControl.NewTagData('TagData');

MEMCPY(ADR(ActualBuffer), ADR(Buffer), SIZEOF(ActualBuffer));

AssertEquals_String(Expected := ExpectedBuffer,
                    Actual :=  ActualBuffer,
                    Message := 'Buffer does not contain expected content');

TEST_FINISHED();
Test_NewTagNested PRIVATE
Implementation
TEST('Test_NewTagNested');

Setup();
XmlControl.SetBuffer(ADR(Buffer), SIZEOF(Buffer));

// <MyTag1><MyTag2/><MyTag3/><MyTag4/></MyTag1>
XmlControl.NewTag(Tag1Name);
XmlControl.NewTag(Tag2Name);
XmlControl.CloseTag();
XmlControl.NewTag(Tag3Name);
XmlControl.CloseTag();
XmlControl.NewTag(Tag4Name);
XmlControl.CloseTag();
XmlControl.CloseTag();

MEMCPY(ADR(ActualBuffer), ADR(Buffer), SIZEOF(ActualBuffer));

AssertEquals_String(Expected := ExpectedBuffer,
                    Actual :=  ActualBuffer,
                    Message := 'Buffer does not contain expected content');

TEST_FINISHED();

Used by

Declaration source
// Contains tests that verify the XmlControl function block methods
FUNCTION_BLOCK FB_TestXmlControl EXTENDS TcUnit.FB_TestSuite
VAR
    Buffer: ARRAY[0..TcUnit.GVL_Param_TcUnit.xUnitBufferSize - 1] OF BYTE;
END_VAR