summaryrefslogtreecommitdiffstats
path: root/src/usr/errl/test/errluserdetailtest.H
diff options
context:
space:
mode:
Diffstat (limited to 'src/usr/errl/test/errluserdetailtest.H')
-rw-r--r--src/usr/errl/test/errluserdetailtest.H117
1 files changed, 115 insertions, 2 deletions
diff --git a/src/usr/errl/test/errluserdetailtest.H b/src/usr/errl/test/errluserdetailtest.H
index 8fb1f3ed5..c70119a74 100644
--- a/src/usr/errl/test/errluserdetailtest.H
+++ b/src/usr/errl/test/errluserdetailtest.H
@@ -35,6 +35,13 @@
#include <errl/errluserdetails.H>
#include <errl/errlreasoncodes.H>
#include <errl/errludstring.H>
+#include <errl/errludbacktrace.H>
+#include <errl/errludtarget.H>
+#include <errludattribute.H>
+#include <targeting/common/targetservice.H>
+#include <targeting/common/iterators/rangefilter.H>
+#include <targeting/common/predicates/predicates.H>
+#include <targeting/common/util.H>
using namespace ERRORLOG;
@@ -61,8 +68,8 @@ public:
* @userdata2 Test data 2
* @devdesc User Details unit test - create string user detail data
*/
- l_errl = new ERRORLOG::ErrlEntry(
- ERRORLOG::ERRL_SEV_INFORMATIONAL,
+ l_errl = new ErrlEntry(
+ ERRL_SEV_INFORMATIONAL,
HBERRL_USERDATA_TEST_MOD_ID,
HBERRL_TEST_STRING_UD,
0x1234567890, // user1
@@ -76,6 +83,112 @@ public:
errlCommit(l_errl, CXXTEST_COMP_ID);
}
+ /**
+ * @test testAttribute - Capture a String in an error log
+ */
+ void testAttribute(void)
+ {
+ errlHndl_t l_err = NULL;
+
+ TS_TRACE( "testAttribute errorlog user detail data");
+ /*@
+ * @errortype
+ * @severity ERRORLOG_SEV_INFORMATIONAL
+ * @moduleid HBERRL_USERDATA_TEST_MOD_ID
+ * @reasoncode HBERRL_TEST_ATTRIBUTE_UD
+ * @userdata1 Test data 1
+ * @userdata2 Test data 2
+ * @devdesc User Details unit test - create string user detail data
+ */
+ l_err = new ErrlEntry(
+ ERRL_SEV_INFORMATIONAL,
+ HBERRL_USERDATA_TEST_MOD_ID,
+ HBERRL_TEST_ATTRIBUTE_UD,
+ 0x0001002300450067,
+ 0x008900AB00CD00EF);
+
+ using namespace TARGETING;
+
+ // find a proc target
+ PredicateCTM procChipFilter(CLASS_CHIP,TYPE_PROC);
+ TargetRangeFilter pProc(
+ targetService().begin(), targetService().end(),
+ &procChipFilter);
+
+ // find a membuf target
+ PredicateCTM membufChipFilter(CLASS_CHIP,TYPE_MEMBUF);
+ TargetRangeFilter pMembuf(
+ targetService().begin(), targetService().end(),
+ &membufChipFilter);
+
+ // find a dimm target
+ PredicateCTM dimmChipFilter(CLASS_NA,TYPE_DIMM);
+ TargetRangeFilter pDimm(
+ targetService().begin(), targetService().end(),
+ &dimmChipFilter);
+
+ const Target* c_target;
+ c_target = *pProc;
+ TS_TRACE( "testAttribute pProc %p", c_target);
+ ErrlUserDetailsString("Attribute test").addToLog(l_err);
+ ErrlUserDetailsTarget(c_target).addToLog(l_err);
+ ErrlUserDetailsBackTrace().addToLog(l_err);
+ ErrlUserDetailsAttribute(c_target,ATTR_CLASS).addToLog(l_err);
+ ErrlUserDetailsAttribute(c_target,ATTR_TYPE).addToLog(l_err);
+ ErrlUserDetailsAttribute(c_target,ATTR_MODEL).addToLog(l_err);
+ ErrlUserDetailsAttribute(c_target,ATTR_PHYS_PATH).addToLog(l_err);
+ ErrlUserDetailsAttribute(c_target,ATTR_SCRATCH_UINT8_1).addToLog(l_err);
+ ErrlUserDetailsAttribute(c_target,ATTR_HUID).addToLog(l_err);
+ ErrlUserDetailsAttribute(c_target,ATTR_DUMMY_WO).addToLog(l_err);
+ ErrlUserDetailsAttribute(c_target).addToLog(l_err);
+
+ c_target = *pMembuf;
+ TS_TRACE( "testAttribute pMembuf %p", c_target);
+ ErrlUserDetailsString("Attribute test").addToLog(l_err);
+ ErrlUserDetailsTarget(c_target).addToLog(l_err);
+ ErrlUserDetailsBackTrace().addToLog(l_err);
+ ErrlUserDetailsAttribute(c_target,ATTR_CLASS).addToLog(l_err);
+ ErrlUserDetailsAttribute(c_target,ATTR_TYPE).addToLog(l_err);
+ ErrlUserDetailsAttribute(c_target,ATTR_MODEL).addToLog(l_err);
+ ErrlUserDetailsAttribute(c_target,ATTR_PHYS_PATH).addToLog(l_err);
+ ErrlUserDetailsAttribute(c_target,ATTR_SCRATCH_UINT8_1).addToLog(l_err);
+ ErrlUserDetailsAttribute(c_target,ATTR_HUID).addToLog(l_err);
+ ErrlUserDetailsAttribute(c_target,ATTR_DUMMY_WO).addToLog(l_err);
+ ErrlUserDetailsAttribute(c_target).addToLog(l_err);
+
+ c_target = *pDimm;
+ TS_TRACE( "testAttribute pDimm %p", c_target);
+ ErrlUserDetailsString("Attribute test").addToLog(l_err);
+ ErrlUserDetailsTarget(c_target).addToLog(l_err);
+ ErrlUserDetailsBackTrace().addToLog(l_err);
+ ErrlUserDetailsAttribute(c_target,ATTR_CLASS).addToLog(l_err);
+ ErrlUserDetailsAttribute(c_target,ATTR_TYPE).addToLog(l_err);
+ ErrlUserDetailsAttribute(c_target,ATTR_MODEL).addToLog(l_err);
+ ErrlUserDetailsAttribute(c_target,ATTR_PHYS_PATH).addToLog(l_err);
+ ErrlUserDetailsAttribute(c_target,ATTR_SCRATCH_UINT8_1).addToLog(l_err);
+ ErrlUserDetailsAttribute(c_target,ATTR_HUID).addToLog(l_err);
+ ErrlUserDetailsAttribute(c_target,ATTR_DUMMY_WO).addToLog(l_err);
+ ErrlUserDetailsAttribute(c_target).addToLog(l_err);
+
+#if 0
+ // extended test
+ uint32_t i = 0;
+ for (TargetIterator target = targetService().begin();
+ (i < 10) && (target != targetService().end());
+ ++i, ++target)
+ {
+ TS_TRACE( "testAttribute %p", *target);
+ const Target* c_target = *target;
+ ErrlUserDetailsTarget(c_target).addToLog(l_err);
+ ErrlUserDetailsAttribute(c_target).addToLog(l_err);
+ }
+#endif
+
+ // commit the errorlog
+ errlCommit(l_err, CXXTEST_COMP_ID);
+ TS_TRACE( "testAttribute done");
+ }
+
};
#endif
OpenPOWER on IntegriCloud