diff options
author | jsdelfino <jsdelfino@13f79535-47bb-0310-9956-ffa450edef68> | 2012-05-28 04:39:18 +0000 |
---|---|---|
committer | jsdelfino <jsdelfino@13f79535-47bb-0310-9956-ffa450edef68> | 2012-05-28 04:39:18 +0000 |
commit | f278315081b24b59bf73e9613e552e3519200a71 (patch) | |
tree | cdfe0e8d00e2c3e8002284c4541429f91cb66e68 /sca-cpp/trunk/kernel/kernel-test.cpp | |
parent | c3eb9d1e20e1f8a7a101854d6a883692cac4e8d0 (diff) |
Improve error reporting with a reason code. Improve debug and audit logging. Fix test scripts to cleanup state from previous builds and correctly report test errors.
git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@1343138 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'sca-cpp/trunk/kernel/kernel-test.cpp')
-rw-r--r-- | sca-cpp/trunk/kernel/kernel-test.cpp | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/sca-cpp/trunk/kernel/kernel-test.cpp b/sca-cpp/trunk/kernel/kernel-test.cpp index 9b87397b96..7bde4fb526 100644 --- a/sca-cpp/trunk/kernel/kernel-test.cpp +++ b/sca-cpp/trunk/kernel/kernel-test.cpp @@ -501,13 +501,23 @@ const failable<int> failableH(const int v) { bool testFailableMonad() { const failable<int> m(2); assert(m >> failableF == failableF(2)); - assert((m >> success<int, string>()) == m); + assert((m >> success<int, string, int>()) == m); assert(m >> failableF >> failableG == m >> failableH); cout << "Failable monad test... " << endl; - failable<int> ooops = mkfailure<int>("test"); + const failable<int> ooops = mkfailure<int>("test", 500); assert(reason(ooops) == "test"); + assert(rcode(ooops) == 500); assert(ooops >> failableF >> failableG == ooops); + + const failable<value> vooops = mkfailure<value>(ooops); + assert(reason(vooops) == "test"); + assert(rcode(vooops) == 500); + + const value v = value(vooops); + assert(car<value>(v) == value()); + assert(cadr<value>(v) == string("test")); + assert(caddr<value>(v) == value((double)500)); return true; } |