Skip to content

Commit

Permalink
Fixed bug in cutting items. Added test for cutting item life.
Browse files Browse the repository at this point in the history
Version 1.3.0.2
  • Loading branch information
Will Sobel committed Aug 15, 2014
1 parent 738a18b commit f570111
Show file tree
Hide file tree
Showing 6 changed files with 37 additions and 5 deletions.
2 changes: 1 addition & 1 deletion agent/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ set(CMAKE_FIND_APPBUNDLE NEVER)
set (AGENT_VERSION_MAJOR 1)
set (AGENT_VERSION_MINOR 3)
set (AGENT_VERSION_PATCH 0)
set (AGENT_VERSION_BUILD 1)
set (AGENT_VERSION_BUILD 2)
set (AGENT_VERSION_RC "")

if(WIN32)
Expand Down
8 changes: 4 additions & 4 deletions agent/xml_parser.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -680,14 +680,14 @@ CuttingItemPtr XmlParser::parseCuttingItem(xmlNodePtr aNode)
CuttingToolValuePtr value = parseCuttingToolNode(meas);
item->mMeasurements[value->mKey] = value;
}
} else if (xmlStrcmp(child->name, BAD_CAST "text") != 0) {
CuttingToolValuePtr value = parseCuttingToolNode(child);
item->mValues[value->mKey] = value;
} else if (xmlStrcmp(child->name, BAD_CAST "ItemLife") == 0) {
CuttingToolValuePtr value = parseCuttingToolNode(child);
item->mLives.push_back(value);
} else if (xmlStrcmp(child->name, BAD_CAST "text") != 0) {
CuttingToolValuePtr value = parseCuttingToolNode(child);
item->mValues[value->mKey] = value;
}
}
}

return item;
}
Expand Down
28 changes: 28 additions & 0 deletions test/agent_test.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1459,6 +1459,34 @@ void AgentTest::testAssetPrependId()
}
}

void AgentTest::testAssetWithSimpleCuttingItems()
{
testAddAdapter();

adapter->parseBuffer("TIME|@ASSET@|XXX.200|CuttingTool|--multiline--AAAA\n");
adapter->parseBuffer((getFile("asset5.xml") + "\n").c_str());
adapter->parseBuffer("--multiline--AAAA\n");
CPPUNIT_ASSERT_EQUAL((unsigned int) 1, a->getAssetCount());

path = "/asset/XXX.200";

{
PARSE_XML_RESPONSE;
CPPUNITTEST_ASSERT_XML_PATH_EQUAL(doc, "//m:CuttingItem[@indices='1']/m:ItemLife", "0");
CPPUNITTEST_ASSERT_XML_PATH_EQUAL(doc, "//m:CuttingItem[@indices='1']/m:ItemLife@type", "PART_COUNT");
CPPUNITTEST_ASSERT_XML_PATH_EQUAL(doc, "//m:CuttingItem[@indices='1']/m:ItemLife@countDirection", "UP");
CPPUNITTEST_ASSERT_XML_PATH_EQUAL(doc, "//m:CuttingItem[@indices='1']/m:ItemLife@initial", "0");
CPPUNITTEST_ASSERT_XML_PATH_EQUAL(doc, "//m:CuttingItem[@indices='1']/m:ItemLife@limit", "0");

CPPUNITTEST_ASSERT_XML_PATH_EQUAL(doc, "//m:CuttingItem[@indices='4']/m:ItemLife", "0");
CPPUNITTEST_ASSERT_XML_PATH_EQUAL(doc, "//m:CuttingItem[@indices='4']/m:ItemLife@type", "PART_COUNT");
CPPUNITTEST_ASSERT_XML_PATH_EQUAL(doc, "//m:CuttingItem[@indices='4']/m:ItemLife@countDirection", "UP");
CPPUNITTEST_ASSERT_XML_PATH_EQUAL(doc, "//m:CuttingItem[@indices='4']/m:ItemLife@initial", "0");
CPPUNITTEST_ASSERT_XML_PATH_EQUAL(doc, "//m:CuttingItem[@indices='4']/m:ItemLife@limit", "0");
}

}

void AgentTest::testPut()
{
key_value_map queries;
Expand Down
2 changes: 2 additions & 0 deletions test/agent_test.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -113,6 +113,7 @@ class AgentTest : public CppUnit::TestFixture
CPPUNIT_TEST(testAssetAdditionOfAssetRemoved13);
CPPUNIT_TEST(testAssetPrependId);
CPPUNIT_TEST(testBadAsset);
CPPUNIT_TEST(testAssetWithSimpleCuttingItems);

CPPUNIT_TEST_SUITE_END();

Expand Down Expand Up @@ -201,6 +202,7 @@ class AgentTest : public CppUnit::TestFixture

void testAssetPrependId();
void testBadAsset();
void testAssetWithSimpleCuttingItems();

// Test put for data items
void testPut();
Expand Down
1 change: 1 addition & 0 deletions test/asset4.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
<CuttingTool serialNumber="@11" toolId="11" assetId="@11"><Description>Tool number: 11</Description><CuttingToolLifeCycle><CutterStatus><Status>AVAILABLE</Status></CutterStatus><Location type="POT">0</Location><ProgramToolNumber>11</ProgramToolNumber><Measurements><FunctionalLength code="LF" nominal="188.1378">188.1371</FunctionalLength><CuttingDiameter code="DC" nominal="25.4">25.3986</CuttingDiameter></Measurements><CuttingItems count="3"><CuttingItem indices="1"><Description>DRILLING</Description><Measurements><FunctionalLength code="LF1" nominal="188.1378">188.1371</FunctionalLength><CuttingDiameter code="DC1" nominal="25.4">25.3986</CuttingDiameter><CornerRadius code="RE" nominal="0">0</CornerRadius><PointAngle code="SIG" nominal="0">0</PointAngle></Measurements><CuttingItem indices="2"><Description>DRILLING</Description><Measurements><FunctionalLength code="LF2" nominal="0">0</FunctionalLength><CuttingDiameter code="DC2" nominal="0">0</CuttingDiameter><CornerRadius code="RE" nominal="0">0</CornerRadius><PointAngle code="SIG" nominal="0">0</PointAngle></Measurements><CuttingItem indices="3"><Description>DRILLING</Description><Measurements><FunctionalLength code="LF3" nominal="0">-2.5398</FunctionalLength><CuttingDiameter code="DC3" nominal="0">-5.0796</CuttingDiameter><CornerRadius code="RE" nominal="0">0</CornerRadius><PointAngle code="SIG" nominal="0">0</PointAngle></Measurements></CuttingItmems></CuttingToolLifeCycle></CuttingTool>
1 change: 1 addition & 0 deletions test/asset5.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
<CuttingTool toolId="XXX" serialNumber="200" assetId="XXX.200"><Description /><CuttingToolLifeCycle><Location type="POT" positiveOverlap="0" negativeOverlap="0">4</Location><ProgramToolNumber>200</ProgramToolNumber><CuttingItems count="4"><CuttingItem indices="1"><ItemLife type="PART_COUNT" countDirection="UP" initial="0" limit="0">0</ItemLife></CuttingItem><CuttingItem indices="2"><ItemLife type="PART_COUNT" countDirection="UP" initial="0" limit="0">0</ItemLife></CuttingItem><CuttingItem indices="3"><ItemLife type="PART_COUNT" countDirection="UP" initial="0" limit="0">0</ItemLife></CuttingItem><CuttingItem indices="4"><ItemLife type="PART_COUNT" countDirection="UP" initial="0" limit="0">0</ItemLife></CuttingItem></CuttingItems></CuttingToolLifeCycle></CuttingTool>

0 comments on commit f570111

Please sign in to comment.