00001
00033 #include <tut/tut.h>
00034 #include "linden_common.h"
00035 #include "lltut.h"
00036
00037 #include "llapr.h"
00038 #include "llversionserver.h"
00039 #include "message.h"
00040 #include "message_prehash.h"
00041
00042 namespace
00043 {
00044 struct Response : public LLHTTPNode::Response
00045 {
00046 virtual void result(const LLSD&) {}
00047 virtual void status(S32 code, const std::string& message)
00048 {
00049 mStatus = code;
00050 }
00051 S32 mStatus;
00052 };
00053 }
00054
00055 namespace tut
00056 {
00057 struct LLMessageSystemTestData
00058 {
00059 LLMessageSystemTestData()
00060 {
00061 static bool init = false;
00062 if(! init)
00063 {
00064 ll_init_apr();
00065 init_prehash_data();
00066 init = true;
00067 }
00068
00069
00070 start_messaging_system("notafile", 13035,
00071 LL_VERSION_MAJOR,
00072 LL_VERSION_MINOR,
00073 LL_VERSION_PATCH,
00074 FALSE,
00075 "notasharedsecret");
00076 }
00077
00078 ~LLMessageSystemTestData()
00079 {
00080
00081 delete gMessageSystem;
00082 gMessageSystem = NULL;
00083 }
00084 };
00085
00086 typedef test_group<LLMessageSystemTestData> LLMessageSystemTestGroup;
00087 typedef LLMessageSystemTestGroup::object LLMessageSystemTestObject;
00088 LLMessageSystemTestGroup messageTestGroup("LLMessageSystem");
00089
00090 template<> template<>
00091 void LLMessageSystemTestObject::test<1>()
00092
00093 {
00094 const char* name = "notamessasge";
00095 const LLSD message;
00096 const LLPointer<Response> response = new Response();
00097 gMessageSystem->dispatch(name, message, response);
00098 ensure_equals(response->mStatus, 404);
00099 }
00100 }
00101