summaryrefslogtreecommitdiffstats
path: root/src/usr/devicefw/test
diff options
context:
space:
mode:
authorPatrick Williams <iawillia@us.ibm.com>2011-05-24 21:18:35 -0500
committerA. Patrick Williams III <iawillia@us.ibm.com>2011-06-02 15:14:28 -0500
commit74b9b31c9ae811dd527d4eb328e9fa93327442ab (patch)
tree848b6ad8a46f8a5a8065f80fcaddf07d061b3be2 /src/usr/devicefw/test
parentf0e44bc60ca80d5bf875f0836a119e361d84dd44 (diff)
downloadtalos-hostboot-74b9b31c9ae811dd527d4eb328e9fa93327442ab.tar.gz
talos-hostboot-74b9b31c9ae811dd527d4eb328e9fa93327442ab.zip
Errl support for device framework.
Change-Id: I7849df2994312c6e91d9f86431c2d084c26b21cf Reviewed-on: http://gfw160.austin.ibm.com:8080/gerrit/99 Tested-by: Jenkins Server Reviewed-by: Thi N. Tran <thi@us.ibm.com>
Diffstat (limited to 'src/usr/devicefw/test')
-rw-r--r--src/usr/devicefw/test/associatortest.H60
1 files changed, 47 insertions, 13 deletions
diff --git a/src/usr/devicefw/test/associatortest.H b/src/usr/devicefw/test/associatortest.H
index 792b6c3ef..3d7aa6a32 100644
--- a/src/usr/devicefw/test/associatortest.H
+++ b/src/usr/devicefw/test/associatortest.H
@@ -2,6 +2,8 @@
#define __TEST_ASSOCIATORTEST_H
#include <cxxtest/TestSuite.H>
+#include <errl/errlentry.H>
+#include <devicefw/devfwreasoncodes.H>
#include "../associator.H"
using namespace DeviceFW;
@@ -33,10 +35,10 @@ public:
// Used for registration testing.
static
- ErrorHandle_t performOperation(OperationType i_opType,
- TargetHandle_t i_target,
- void* io_buffer, size_t& io_buflen,
- int64_t i_accessType, va_list i_addr)
+ errlHndl_t performOperation(OperationType i_opType,
+ TargetHandle_t i_target,
+ void* io_buffer, size_t& io_buflen,
+ int64_t i_accessType, va_list i_addr)
{
g_associatorTest_result = g_associatorTest_value;
g_associatorTest_opType = i_opType;
@@ -61,9 +63,9 @@ public:
PROCESSOR,
&performOperation);
- ErrorHandle_t l_errl = as.performOp(READ, TargetHandle_t(),
- buf, bufsize,
- SCOM, va_list());
+ errlHndl_t l_errl = as.performOp(READ, TargetHandle_t(),
+ buf, bufsize,
+ SCOM, va_list());
if (l_errl)
{
@@ -102,9 +104,9 @@ public:
PROCESSOR,
&performOperation);
- ErrorHandle_t l_errl = as.performOp(WRITE, TargetHandle_t(),
- buf, bufsize,
- SCOM, va_list());
+ errlHndl_t l_errl = as.performOp(WRITE, TargetHandle_t(),
+ buf, bufsize,
+ SCOM, va_list());
if (l_errl)
{
@@ -143,9 +145,9 @@ public:
WILDCARD,
&performOperation);
- ErrorHandle_t l_errl = as.performOp(READ, TargetHandle_t(),
- buf, bufsize,
- SCOM, va_list());
+ errlHndl_t l_errl = as.performOp(READ, TargetHandle_t(),
+ buf, bufsize,
+ SCOM, va_list());
if (l_errl)
{
@@ -168,6 +170,38 @@ public:
}
}
+
+ /**
+ * @test Verify missing registration returns an error log.
+ */
+ void testMissingRegistration()
+ {
+ void* buf = NULL;
+ size_t bufsize = 0;
+
+ g_associatorTest_value = &AssociatorTest::testMissingRegistration;
+
+ Associator as;
+ as.registerRoute(READ,
+ SCOM,
+ WILDCARD,
+ &performOperation);
+
+ errlHndl_t l_errl = as.performOp(READ, TargetHandle_t(),
+ buf, bufsize,
+ MAILBOX, va_list());
+
+ if (NULL == l_errl)
+ {
+ TS_FAIL("Error not received from performOp.");
+ }
+ else if (DEVFW_RC_NO_ROUTE_FOUND != l_errl->reasonCode())
+ {
+ TS_FAIL("Reason code different from DEVFW_RC_NO_ROUTE_FOUND.");
+ }
+ }
+
+
};
#endif
OpenPOWER on IntegriCloud