[avida-cvs] avida(kaben) CVS commits: /current/CMakeModules FixFindQt.cmake /current/source/qt-viewer/exp/exp_cleanup2 CMakeLists.txt avd_dbg_msgs.hh avd_message_closure.cc avd_message_closure.hh avd_message_closure_t.cc avd_message_display.cc avd_message_display.hh avd_message_display_t.cc avd_message_set_tracker.cc avd_message_set_tracker.hh avd_message_type_set.hh demo_base_t.cc
kaben
avida-cvs at alife.org
Wed Dec 17 04:02:53 PST 2003
kaben Tue Dec 16 20:02:53 2003 EDT
Modified files: (Branch: kaben)
/avida/current/CMakeModules FixFindQt.cmake
/avida/current/source/qt-viewer/exp/exp_cleanup2 CMakeLists.txt
avd_dbg_msgs.hh
avd_message_closure.cc
avd_message_closure.hh
avd_message_closure_t.cc
avd_message_display.cc
avd_message_display.hh
avd_message_display_t.cc
avd_message_set_tracker.cc
avd_message_set_tracker.hh
avd_message_type_set.hh
demo_base_t.cc
Log:
CREATE_QT_EXECUTABLE macro definition in CMakeModules/FixFindQt.cmake
was missing parameter "INSTALL_PREFIX", which I added back.
-------------- next part --------------
Index: avida/current/CMakeModules/FixFindQt.cmake
diff -u avida/current/CMakeModules/FixFindQt.cmake:1.1.2.1 avida/current/CMakeModules/FixFindQt.cmake:1.1.2.2
--- avida/current/CMakeModules/FixFindQt.cmake:1.1.2.1 Mon Dec 15 10:05:43 2003
+++ avida/current/CMakeModules/FixFindQt.cmake Tue Dec 16 20:02:52 2003
@@ -67,6 +67,7 @@
NAME
SOURCES
LIBRARIES
+ INSTALL_PREFIX
)
ADD_EXECUTABLE(${NAME} ${${SOURCES}})
TARGET_LINK_LIBRARIES(${NAME} ${${LIBRARIES}})
Index: avida/current/source/qt-viewer/exp/exp_cleanup2/CMakeLists.txt
diff -u avida/current/source/qt-viewer/exp/exp_cleanup2/CMakeLists.txt:1.1.2.1 avida/current/source/qt-viewer/exp/exp_cleanup2/CMakeLists.txt:1.1.2.2
--- avida/current/source/qt-viewer/exp/exp_cleanup2/CMakeLists.txt:1.1.2.1 Mon Dec 15 10:05:48 2003
+++ avida/current/source/qt-viewer/exp/exp_cleanup2/CMakeLists.txt Tue Dec 16 20:02:52 2003
@@ -69,9 +69,13 @@
# threaded_driver/avd_avida_driver.cc
# threaded_driver/avd_driver_creator.cc
# threaded_driver/avd_orig_driver_controller.cc
+ avd_dbg_msgs.cc
+ avd_message_class.cc
avd_message_closure.cc
avd_message_display.cc
avd_message_set_tracker.cc
+ avd_message_type.cc
+ avd_verifiable.cc
# user_msg/avd_qstr_message_display.cc
# user_msg/avd_user_msg_ctrl.cc
# user_msg/avd_user_msg_gui.cc
@@ -266,10 +270,12 @@
SET(QT_TESTSUITES
template_t
- template2_t
+# template2_t
)
STRING(REGEX REPLACE _t _t.hh\; TESTSUITE_MOCSRCS ${QT_TESTSUITES})
SET(libxqtunittest_a_SOURCES
+# avd_message_closure_m.cc
+# avd_message_display_m.cc
xqt_test_case.cc
)
SET(libxqtunittest_moc_a_MOC_SOURCES
@@ -292,6 +298,7 @@
event
main
tools
+ trio
mockpp
yaktest
xqtviewer_moc
@@ -305,8 +312,12 @@
SET(TESTSUITES
demo_base_t
- avd_message_display_t
- avd_message_closure_t
+# avd_message_display_t
+# avd_message_class_t
+# avd_message_type_t
+# avd_message_closure_t
+# avd_dbg_msgs_t
+ avd_verifiable_t
)
FOREACH(TESTSUITE ${TESTSUITES})
ADD_EXECUTABLE(${TESTSUITE} ${TESTSUITE}.cc)
@@ -317,6 +328,8 @@
event
main
tools
+ trio
+ mockpp
yaktest
)
ADD_TEST(${TESTSUITE} ${TESTSUITE})
Index: avida/current/source/qt-viewer/exp/exp_cleanup2/avd_dbg_msgs.hh
diff -u avida/current/source/qt-viewer/exp/exp_cleanup2/avd_dbg_msgs.hh:1.1.2.1 avida/current/source/qt-viewer/exp/exp_cleanup2/avd_dbg_msgs.hh:1.1.2.2
--- avida/current/source/qt-viewer/exp/exp_cleanup2/avd_dbg_msgs.hh:1.1.2.1 Mon Dec 15 10:05:48 2003
+++ avida/current/source/qt-viewer/exp/exp_cleanup2/avd_dbg_msgs.hh Tue Dec 16 20:02:52 2003
@@ -1,19 +1,23 @@
#ifndef AVD_DBG_MSGS_HH
#define AVD_DBG_MSGS_HH
-#ifndef AVD_MESSAGE_DISPLAY_HH
-#include "avd_message_display.hh"
+#ifndef AVD_MESSAGE_CLOSURE_HH
+#include "avd_message_closure.hh"
#endif
+#ifndef AVD_MESSAGE_TYPE_BASE_HH
+#include "avd_message_type_base.hh"
+#endif
+
+extern const avdMessageTypeBase &Info_GEN_avdMsg;
+extern const avdMessageTypeBase &Debug_GEN_avdMsg;
+extern const avdMessageTypeBase &Error_GEN_avdMsg;
+extern const avdMessageTypeBase &Fatal_GEN_avdMsg;
+#define avdInfo AVD_INFO_MSG(avdMessageClosure, GEN)
+#define avdDebug AVD_DEBUG_MSG(avdMessageClosure, GEN)
+#define avdError AVD_ERROR_MSG(avdMessageClosure, GEN)
+#define avdFatal AVD_FATAL_MSG(avdMessageClosure, GEN)
-extern avdMessageType Info_GEN_avdMsg;
-extern avdMessageType Debug_GEN_avdMsg;
-extern avdMessageType Error_GEN_avdMsg;
-extern avdMessageType Fatal_GEN_avdMsg;
-#define avdInfo AVD_INFO_MSG(GEN)
-#define avdDebug AVD_DEBUG_MSG(GEN)
-#define avdError AVD_ERROR_MSG(GEN)
-#define avdFatal AVD_FATAL_MSG(GEN)
-extern avdMessageType Plain_avdMsg;
-#define Message AVD_PLAIN_MSG(Plain)
+extern const avdMessageTypeBase &Plain_avdMsg;
+#define Message AVD_PLAIN_MSG(avdMessageClosure, Plain)
#endif
Index: avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_closure.cc
diff -u avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_closure.cc:1.1.2.1 avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_closure.cc:1.1.2.2
--- avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_closure.cc:1.1.2.1 Mon Dec 15 10:05:48 2003
+++ avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_closure.cc Tue Dec 16 20:02:52 2003
@@ -2,8 +2,17 @@
#include "avd_message_closure.hh"
#endif
-#ifndef AVD_MESSAGE_DISPLAY_HH
-#include "avd_message_display.hh"
+#ifndef AVD_MESSAGE_CLASS_BASE_HH
+#include "avd_message_class_base.hh"
+#endif
+#ifndef AVD_MESSAGE_CLOSURE_BASE_HH
+#include "avd_message_closure_base.hh"
+#endif
+#ifndef AVD_MESSAGE_DISPLAY_BASE_HH
+#include "avd_message_display_base.hh"
+#endif
+#ifndef AVD_MESSAGE_TYPE_BASE_HH
+#include "avd_message_type_base.hh"
#endif
#ifndef TRIO_TRIO_H
@@ -16,51 +25,24 @@
using namespace std;
-void avdMessageClass::configure(avdMessageType *message_type){
- if(!message_type){
- cerr << "* Error in message display system in method *" << endl;
- cerr << "* void avdMessageClass::configure(avdMessageType *) *" << endl;
- cerr << endl;
- cerr << "Trying to configure a message type, but the pointer" << endl;
- cerr << "I was given to the message type doesn't point anywhere." << endl;
- } else {
- message_type->m_is_active = true;
- message_type->m_show_where = true;
- message_type->m_show_function = true;
- }
-}
-avdMessageClass avdMCInfo("Info:", &s_avd_info_display, false, false, false);
-avdMessageClass avdMCDebug("Debug:", &s_avd_debug_display, false, false, false);
-avdMessageClass avdMCError("Error:", &s_avd_error_display, false, true, false);
-avdMessageClass avdMCFatal("Fatal:", &s_avd_fatal_display, true, true, false);
-avdMessageClass avdMCPlain("Plain:", &s_avd_plain_display, false, true, true);
-
-avdMessageType::avdMessageType(
- const char *type_name,
- avdMessageClass &message_class
-):m_type_name(type_name),
- m_message_class(message_class)
-{ message_class.configure(this); }
-avdMessageType Info_GEN_avdMsg("General", avdMCInfo);
-avdMessageType Debug_GEN_avdMsg("General", avdMCDebug);
-avdMessageType Error_GEN_avdMsg("General", avdMCError);
-avdMessageType Fatal_GEN_avdMsg("General", avdMCFatal);
-avdMessageType Plain_avdMsg("General", avdMCPlain);
+// stub.
+avdMessageClosureBase &avdMessageClosure::operator<<(const QString &s)
+{ prefix(); return *this; }
avdMessageClosure::avdMessageClosure(
- avdMessageType &type,
+ const avdMessageTypeBase &type,
const char *function_name,
const char *file_name,
int line_number
-):m_type(type),
- m_function(function_name),
- m_file(file_name),
- m_line(line_number),
- m_error(INT_MAX),
- m_op_count(0)
+):m_type(type)
+, m_function(function_name)
+, m_file(file_name)
+, m_line(line_number)
+, m_error(INT_MAX)
+, m_op_count(0)
{}
avdMessageClosure::~avdMessageClosure(void){
- if(!m_type.m_message_class.m_msg_display){
+ if(!m_type.messageDisplay()){
cerr << "* Error in message display system *" << endl;
cerr << "* in class avdMessageClosure destructor *" << endl;
cerr << endl;
@@ -71,32 +53,32 @@
cerr << endl;
cerr << m_msg << endl;
cerr << endl;
- if(m_type.m_message_class.m_is_fatal) abort();
+ if(m_type.isFatal()) abort();
} else {
- (*m_type.m_message_class.m_msg_display)->out(m_msg);
- if(m_type.m_message_class.m_is_fatal) (*m_type.m_message_class.m_msg_display)->abort();
+ (*m_type.messageDisplay())->out(m_msg);
+ if(m_type.isFatal()) (*m_type.messageDisplay())->abort();
}
}
void avdMessageClosure::prefix(void){
- if(m_op_count++ == 0 && !m_type.m_message_class.m_no_prefix){
- if(m_type.m_message_class.m_is_prefix){
- m_msg += m_type.m_type_name;
+ if(m_op_count++ == 0 && !m_type.noPrefix()){
+ if(m_type.isPrefix()){
+ m_msg += m_type.typeName();
m_msg += '-';
}
- m_msg += m_type.m_message_class.m_class_name;
- if(!m_type.m_message_class.m_is_prefix
- ||m_type.m_show_function
- ||m_type.m_show_where
+ m_msg += m_type.className();
+ if(!m_type.isPrefix()
+ ||m_type.showFunction()
+ ||m_type.showWhere()
){
bool colon = false;
- if(!m_type.m_message_class.m_is_prefix){
- m_msg += m_type.m_type_name;
+ if(!m_type.isPrefix()){
+ m_msg += m_type.typeName();
m_msg += ": ";
}
- if(m_type.m_show_function || m_type.m_show_where){
+ if(m_type.showFunction() || m_type.showWhere()){
m_msg += "<";
}
- if(m_type.m_show_function){
+ if(m_type.showFunction()){
if(!m_function){
cerr << "* Error in message display system in *" << endl;
cerr << "* void avdMessageClosure::prefix() *" << endl;
@@ -109,7 +91,7 @@
} else { m_msg += m_function; }
colon = true;
}
- if(m_type.m_show_where){
+ if(m_type.showWhere()){
if(colon){m_msg += ':';}
if(!m_file){
cerr << "* Error in message display system in *" << endl;
@@ -143,7 +125,7 @@
}
}
}
- if(m_type.m_show_function || m_type.m_show_where){
+ if(m_type.showFunction() || m_type.showWhere()){
m_msg += ">";
}
m_msg += ' ';
@@ -152,44 +134,44 @@
}
}
}
-avdMessageClosure &avdMessageClosure::operator<<(char c)
+avdMessageClosureBase &avdMessageClosure::operator<<(char c)
{ prefix(); m_msg += c; return *this; }
-avdMessageClosure &avdMessageClosure::operator<<(unsigned char c)
+avdMessageClosureBase &avdMessageClosure::operator<<(unsigned char c)
{ prefix(); m_msg += c; return *this; }
-avdMessageClosure &avdMessageClosure::operator<<(const char *s)
+avdMessageClosureBase &avdMessageClosure::operator<<(const char *s)
{ prefix(); m_msg += s; return *this; }
-//avdMessageClosure &avdMessageClosure::operator<<(int i)
+//avdMessageClosureBase &avdMessageClosure::operator<<(int i)
//{ return va("%d", i); }
-//avdMessageClosure &avdMessageClosure::operator<<(unsigned int i)
+//avdMessageClosureBase &avdMessageClosure::operator<<(unsigned int i)
//{ return va("%u", i); }
-//avdMessageClosure &avdMessageClosure::operator<<(long i)
+//avdMessageClosureBase &avdMessageClosure::operator<<(long i)
//{ return va("%ld", i); }
-//avdMessageClosure &avdMessageClosure::operator<<(unsigned long i)
+//avdMessageClosureBase &avdMessageClosure::operator<<(unsigned long i)
//{ return va("%lu", i); }
-//avdMessageClosure &avdMessageClosure::operator<<(float f)
+//avdMessageClosureBase &avdMessageClosure::operator<<(float f)
//{ return va("%g", f); }
-//avdMessageClosure &avdMessageClosure::operator<<(double f)
+//avdMessageClosureBase &avdMessageClosure::operator<<(double f)
//{ return va("%g", f); }
-//avdMessageClosure &avdMessageClosure::operator<<(const void *p)
+//avdMessageClosureBase &avdMessageClosure::operator<<(const void *p)
//{ return va("%p", p); }
-avdMessageClosure &avdMessageClosure::operator<<(int i)
+avdMessageClosureBase &avdMessageClosure::operator<<(int i)
{ char buf[32]; trio_snprintf(buf, 32, "%d", i); m_msg += buf; return *this; }
-avdMessageClosure &avdMessageClosure::operator<<(unsigned int i)
+avdMessageClosureBase &avdMessageClosure::operator<<(unsigned int i)
{ char buf[32]; trio_snprintf(buf, 32, "%u", i); m_msg += buf; return *this; }
-avdMessageClosure &avdMessageClosure::operator<<(long i)
+avdMessageClosureBase &avdMessageClosure::operator<<(long i)
{ char buf[32]; trio_snprintf(buf, 32, "%ld", i); m_msg += buf; return *this; }
-avdMessageClosure &avdMessageClosure::operator<<(unsigned long i)
+avdMessageClosureBase &avdMessageClosure::operator<<(unsigned long i)
{ char buf[32]; trio_snprintf(buf, 32, "%lu", i); m_msg += buf; return *this; }
-avdMessageClosure &avdMessageClosure::operator<<(float f)
+avdMessageClosureBase &avdMessageClosure::operator<<(float f)
{ char buf[32]; trio_snprintf(buf, 32, "%g", f); m_msg += buf; return *this; }
-avdMessageClosure &avdMessageClosure::operator<<(double f)
+avdMessageClosureBase &avdMessageClosure::operator<<(double f)
{ char buf[32]; trio_snprintf(buf, 32, "%g", f); m_msg += buf; return *this; }
-avdMessageClosure &avdMessageClosure::operator<<(const void *p)
+avdMessageClosureBase &avdMessageClosure::operator<<(const void *p)
{ char buf[32]; trio_snprintf(buf, 32, "%p", p); m_msg += buf; return *this; }
-avdMessageClosure &avdMessageClosure::va(const char *fmt, ...)
+avdMessageClosureBase &avdMessageClosure::va(const char *fmt, ...)
{
if(!fmt){
cerr << "* Error in message display system in *" << endl;
Index: avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_closure.hh
diff -u avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_closure.hh:1.1.2.1 avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_closure.hh:1.1.2.2
--- avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_closure.hh:1.1.2.1 Mon Dec 15 10:05:48 2003
+++ avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_closure.hh Tue Dec 16 20:02:52 2003
@@ -1,56 +1,19 @@
#ifndef AVD_MESSAGE_CLOSURE_HH
#define AVD_MESSAGE_CLOSURE_HH
-#ifndef _CPP_IOSTREAM
-#include <iostream>
+#ifndef AVD_MESSAGE_CLOSURE_BASE_HH
+#include "avd_message_closure_base.hh"
#endif
+
#ifndef STRING_HH
-#include "tools/string.hh"
+#include "string.hh"
#endif
class QString;
-class avdMessageDisplay;
-class avdMessageType;
-
-class avdMessageClass{
-public:
- avdMessageClass(
- const char *class_name,
- avdMessageDisplay **msg_display,
- bool is_fatal,
- bool is_prefix,
- bool no_prefix
- ):m_class_name(class_name), m_msg_display(msg_display),
- m_is_fatal(is_fatal), m_is_prefix(is_prefix), m_no_prefix(no_prefix){}
-public:
- void configure(avdMessageType *message_type);
-public:
- const char *const m_class_name;
- avdMessageDisplay **m_msg_display;
- bool const m_is_fatal;
- bool const m_is_prefix;
- bool const m_no_prefix;
-};
-extern avdMessageClass avdMCInfo;
-extern avdMessageClass avdMCDebug;
-extern avdMessageClass avdMCError;
-extern avdMessageClass avdMCFatal;
-extern avdMessageClass avdMCPlain;
-
-class avdMessageType{
-public:
- avdMessageType(const char *type_name, avdMessageClass &message_class);
-public:
- const char *m_type_name;
- const avdMessageClass &m_message_class;
- bool m_is_active;
- bool m_show_where;
- bool m_show_function;
-};
-
-class avdMessageClosure{
+class avdMessageTypeBase;
+class avdMessageClosure : public avdMessageClosureBase{
protected:
- avdMessageType &m_type;
+ const avdMessageTypeBase &m_type;
const char *m_function;
const char *m_file;
int m_line;
@@ -59,67 +22,27 @@
cString m_msg;
public:
avdMessageClosure(
- avdMessageType &type,
+ const avdMessageTypeBase &type,
const char *function_name,
const char *file_name,
int line_number
);
~avdMessageClosure(void);
public:
- avdMessageClosure &operator<<(char c);
- avdMessageClosure &operator<<(unsigned char c);
- avdMessageClosure &operator<<(const char *s);
- avdMessageClosure &operator<<(int i);
- avdMessageClosure &operator<<(unsigned int i);
- avdMessageClosure &operator<<(long i);
- avdMessageClosure &operator<<(unsigned long i);
- avdMessageClosure &operator<<(float f);
- avdMessageClosure &operator<<(double f);
- avdMessageClosure &operator<<(const void *p);
- avdMessageClosure &operator<<(const QString &s);
-
- avdMessageClosure &operator()(char c){ return operator<<(c); }
- avdMessageClosure &operator()(unsigned char c){ return operator<<(c); }
- avdMessageClosure &operator()(const char *s){ return operator<<(s); }
- avdMessageClosure &operator()(int i){ return operator<<(i); }
- avdMessageClosure &operator()(unsigned int i){ return operator<<(i); }
- avdMessageClosure &operator()(long i){ return operator<<(i); }
- avdMessageClosure &operator()(unsigned long i){ return operator<<(i); }
- avdMessageClosure &operator()(float f){ return operator<<(f); }
- avdMessageClosure &operator()(double f){ return operator<<(f); }
- avdMessageClosure &operator()(const void *p){ return operator<<(p); }
- avdMessageClosure &operator()(const QString &s){ return operator<<(s); }
+ virtual avdMessageClosureBase &operator<<(char c);
+ virtual avdMessageClosureBase &operator<<(unsigned char c);
+ virtual avdMessageClosureBase &operator<<(const char *s);
+ virtual avdMessageClosureBase &operator<<(int i);
+ virtual avdMessageClosureBase &operator<<(unsigned int i);
+ virtual avdMessageClosureBase &operator<<(long i);
+ virtual avdMessageClosureBase &operator<<(unsigned long i);
+ virtual avdMessageClosureBase &operator<<(float f);
+ virtual avdMessageClosureBase &operator<<(double f);
+ virtual avdMessageClosureBase &operator<<(const void *p);
+ virtual avdMessageClosureBase &operator<<(const QString &s);
- avdMessageClosure &va(const char *fmt, ...);
- void prefix(void);
+ virtual avdMessageClosureBase &va(const char *fmt, ...);
+ virtual void prefix(void);
};
-
-#define AVD_MSG_CLOSURE_FL(x)\
- avdMessageClosure(\
- x,\
- __PRETTY_FUNCTION__,\
- __FILE__,\
- __LINE__\
- )
-
-#define AVD_INFO_MSG(type)\
- if (Info_ ## type ## _avdMsg.m_is_active)\
- AVD_MSG_CLOSURE_FL(Info_ ## type ## _avdMsg)
-
-#define AVD_DEBUG_MSG(type)\
- if (Debug_ ## type ## _avdMsg.m_is_active)\
- AVD_MSG_CLOSURE_FL(Debug_ ## type ## _avdMsg)
-
-#define AVD_ERROR_MSG(type)\
- if (Error_ ## type ## _avdMsg.m_is_active)\
- AVD_MSG_CLOSURE_FL(Error_ ## type ## _avdMsg)
-
-#define AVD_FATAL_MSG(type)\
- if (Fatal_ ## type ## _avdMsg.m_is_active)\
- AVD_MSG_CLOSURE_FL(Fatal_ ## type ## _avdMsg)
-
-#define AVD_PLAIN_MSG(type)\
- if (type ## _avdMsg.m_is_active)\
- AVD_MSG_CLOSURE_FL(type ## _avdMsg)
#endif
Index: avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_closure_t.cc
diff -u avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_closure_t.cc:1.1.2.1 avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_closure_t.cc:1.1.2.2
--- avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_closure_t.cc:1.1.2.1 Mon Dec 15 10:05:48 2003
+++ avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_closure_t.cc Tue Dec 16 20:02:52 2003
@@ -1,6 +1,13 @@
#ifndef AVD_MESSAGE_CLOSURE_HH
#include "avd_message_closure.hh"
#endif
+#ifndef AVD_MESSAGE_CLOSURE_M_HH
+#include "avd_message_closure_m.hh"
+#endif
+
+#ifndef AVD_MESSAGE_DISPLAY_HH
+#include "avd_message_display.hh"
+#endif
#ifndef TEST_CASE_H
#include "third-party/yaktest/test_case.h"
@@ -16,14 +23,26 @@
using namespace std;
-class cTemplateTest : public test_case {
+class cMessageClassTest : public test_case {
+public: virtual void test() {
+ test_is_true(true);
+} };
+
+class cMessageTypeTest : public test_case {
+public: virtual void test() {
+ test_is_true(true);
+} };
+
+class cMessageClosureTest : public test_case {
public: virtual void test() {
test_is_true(true);
} };
class cTestSuite : public test_case {
public: cTestSuite() : test_case() {
- adopt_test_case(new cTemplateTest);
+ adopt_test_case(new cMessageClassTest);
+ adopt_test_case(new cMessageTypeTest);
+ adopt_test_case(new cMessageClosureTest);
} };
int main(int argc, char *argv[]){
Index: avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_display.cc
diff -u avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_display.cc:1.1.2.1 avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_display.cc:1.1.2.2
--- avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_display.cc:1.1.2.1 Mon Dec 15 10:05:48 2003
+++ avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_display.cc Tue Dec 16 20:02:52 2003
@@ -2,6 +2,10 @@
#include "avd_message_display.hh"
#endif
+#ifndef AVD_MESSAGE_DISPLAY_BASE_HH
+#include "avd_message_display_base.hh"
+#endif
+
#ifndef STRING_HH
#include "string.hh"
#endif
@@ -12,23 +16,23 @@
using namespace std;
-avdMessageDisplay *s_avd_info_display(&s_avd_info_msg_out);
-avdMessageDisplay *s_avd_debug_display(&s_avd_debug_msg_out);
-avdMessageDisplay *s_avd_error_display(&s_avd_error_msg_out);
-avdMessageDisplay *s_avd_fatal_display(&s_avd_fatal_msg_out);
-avdMessageDisplay *s_avd_plain_display(&s_avd_plain_msg_out);
-void setAvdInfoDisplay(avdMessageDisplay &md) { s_avd_info_display = &md; }
-void setAvdDebugDisplay(avdMessageDisplay &md) { s_avd_debug_display = &md; }
-void setAvdErrorDisplay(avdMessageDisplay &md) { s_avd_error_display = &md; }
-void setAvdFatalDisplay(avdMessageDisplay &md) { s_avd_fatal_display = &md; }
-void setAvdPlainDisplay(avdMessageDisplay &md) { s_avd_plain_display = &md; }
+avdMessageDisplayBase *s_avd_info_display(&s_avd_info_msg_out);
+avdMessageDisplayBase *s_avd_debug_display(&s_avd_debug_msg_out);
+avdMessageDisplayBase *s_avd_error_display(&s_avd_error_msg_out);
+avdMessageDisplayBase *s_avd_fatal_display(&s_avd_fatal_msg_out);
+avdMessageDisplayBase *s_avd_plain_display(&s_avd_plain_msg_out);
+void setAvdInfoDisplay(avdMessageDisplayBase &md) { s_avd_info_display = &md; }
+void setAvdDebugDisplay(avdMessageDisplayBase &md) { s_avd_debug_display = &md; }
+void setAvdErrorDisplay(avdMessageDisplayBase &md) { s_avd_error_display = &md; }
+void setAvdFatalDisplay(avdMessageDisplayBase &md) { s_avd_fatal_display = &md; }
+void setAvdPlainDisplay(avdMessageDisplayBase &md) { s_avd_plain_display = &md; }
-void avdDefaultMessageDisplay::out(const cString &final_msg){
+void avdMessageDisplay::out(const cString &final_msg) const {
if(m_out){
*m_out << final_msg ; m_out->flush();
} else {
cerr << "* Error in message display system in method *" << endl;
- cerr << "* \"void avdDefaultMessageDisplay::out(const cString &)\" *" << endl;
+ cerr << "* \"void avdMessageDisplay::out(const cString &)\" *" << endl;
cerr << endl;
cerr << "Trying to display a message to the user, but my pointer to" << endl;
cerr << "the default output device doesn't point anywhere. So I'm" << endl;
@@ -39,8 +43,8 @@
cerr << endl;
}
}
-avdDefaultMessageDisplay s_avd_info_msg_out(&cout);
-avdDefaultMessageDisplay s_avd_debug_msg_out(&cout);
-avdDefaultMessageDisplay s_avd_error_msg_out(&cerr);
-avdDefaultMessageDisplay s_avd_fatal_msg_out(&cerr);
-avdDefaultMessageDisplay s_avd_plain_msg_out(&cout);
+avdMessageDisplay s_avd_info_msg_out(&cout);
+avdMessageDisplay s_avd_debug_msg_out(&cout);
+avdMessageDisplay s_avd_error_msg_out(&cerr);
+avdMessageDisplay s_avd_fatal_msg_out(&cerr);
+avdMessageDisplay s_avd_plain_msg_out(&cout);
Index: avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_display.hh
diff -u avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_display.hh:1.1.2.1 avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_display.hh:1.1.2.2
--- avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_display.hh:1.1.2.1 Mon Dec 15 10:05:48 2003
+++ avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_display.hh Tue Dec 16 20:02:52 2003
@@ -5,34 +5,22 @@
#include <iostream>
#endif
-class cString;
-class avdMessageDisplay{
-public:
- virtual void out(const cString &){}
- virtual void abort(){ abort(); }
-};
-extern avdMessageDisplay *s_avd_info_display;
-extern avdMessageDisplay *s_avd_debug_display;
-extern avdMessageDisplay *s_avd_error_display;
-extern avdMessageDisplay *s_avd_fatal_display;
-extern avdMessageDisplay *s_avd_plain_display;
-void setAvdInfoDisplay(avdMessageDisplay &info);
-void setAvdDebugDisplay(avdMessageDisplay &md);
-void setAvdErrorDisplay(avdMessageDisplay &md);
-void setAvdFatalDisplay(avdMessageDisplay &md);
-void setAvdPlainDisplay(avdMessageDisplay &md);
+#ifndef AVD_MESSAGE_DISPLAY_BASE_HH
+#include "avd_message_display_base.hh"
+#endif
-class avdDefaultMessageDisplay : public avdMessageDisplay {
+class cString;
+class avdMessageDisplay : public avdMessageDisplayBase {
protected:
std::ostream *m_out;
public:
- avdDefaultMessageDisplay(std::ostream *stream):m_out(stream){}
- void out(const cString &final_msg);
+ avdMessageDisplay(std::ostream *stream):m_out(stream){}
+ void out(const cString &final_msg) const;
};
-extern avdDefaultMessageDisplay s_avd_info_msg_out;
-extern avdDefaultMessageDisplay s_avd_debug_msg_out;
-extern avdDefaultMessageDisplay s_avd_error_msg_out;
-extern avdDefaultMessageDisplay s_avd_fatal_msg_out;
-extern avdDefaultMessageDisplay s_avd_plain_msg_out;
+extern avdMessageDisplay s_avd_info_msg_out;
+extern avdMessageDisplay s_avd_debug_msg_out;
+extern avdMessageDisplay s_avd_error_msg_out;
+extern avdMessageDisplay s_avd_fatal_msg_out;
+extern avdMessageDisplay s_avd_plain_msg_out;
#endif
Index: avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_display_t.cc
diff -u avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_display_t.cc:1.1.2.1 avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_display_t.cc:1.1.2.2
--- avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_display_t.cc:1.1.2.1 Mon Dec 15 10:05:48 2003
+++ avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_display_t.cc Tue Dec 16 20:02:52 2003
@@ -1,6 +1,9 @@
#ifndef AVD_MESSAGE_DISPLAY_HH
#include "avd_message_display.hh"
#endif
+#ifndef AVD_MESSAGE_DISPLAY_M_HH
+#include "avd_message_display_m.hh"
+#endif
#ifndef STRING_HH
#include "string.hh"
@@ -28,30 +31,39 @@
char outbuf[5120];
char errbuf[5120];
+class cMockCoutTest : public test_case {
+public: virtual void test() {
+ mockMessageDisplay md;
+ md.out("test\n");
+ md.out("fubar\n");
+ md.abort();
+} };
+
class cCoutTest : public test_case {
public: virtual void test() {
- avdDefaultMessageDisplay dmd(&cout);
+ avdMessageDisplay md(&cout);
cout.flush();
- dmd.out("test\n");
+ md.out("test\n");
test_is_true(strncmp(outbuf, "test\n", 5) == 0);
cout.flush();
- dmd.out("fubar\n");
+ md.out("fubar\n");
test_is_true(strncmp(outbuf, "fubar\n", 6) == 0);
} };
class cCerrTest : public test_case {
public: virtual void test() {
- avdDefaultMessageDisplay dmd(&cerr);
+ avdMessageDisplay md(&cerr);
cerr.flush();
- dmd.out("test\n");
+ md.out("test\n");
test_is_true(strncmp(errbuf, "test\n", 5) == 0);
- dmd.out("fubar\n");
+ md.out("fubar\n");
cerr.flush();
test_is_true(strncmp(errbuf, "fubar\n", 6) == 0);
} };
class cTestSuite : public test_case {
public: cTestSuite() : test_case() {
+ adopt_test_case(new cMockCoutTest);
adopt_test_case(new cCoutTest);
adopt_test_case(new cCerrTest);
} };
@@ -69,7 +81,7 @@
cout << endl
<< "----------------------------------------" << endl
- << "Testing avdDefaultMessageDisplay and avdMessageDisplay." << endl;
+ << "Testing avdMessageDisplay and avdMessageDisplay." << endl;
cTestSuite t;
t.run_test();
cout << text_test_interpreter().interpretation(t.last_result());
Index: avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_set_tracker.cc
diff -u avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_set_tracker.cc:1.1.2.1 avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_set_tracker.cc:1.1.2.2
--- avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_set_tracker.cc:1.1.2.1 Mon Dec 15 10:05:48 2003
+++ avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_set_tracker.cc Tue Dec 16 20:02:52 2003
@@ -5,8 +5,8 @@
#ifndef AVD_DBG_MSGS_HH
#include "avd_dbg_msgs.hh"
#endif
-#ifndef AVD_MESSAGE_CLOSURE_HH
-#include "avd_message_closure.hh"
+#ifndef AVD_MESSAGE_TYPE_BASE_HH
+#include "avd_message_type_base.hh"
#endif
#include <iostream>
Index: avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_set_tracker.hh
diff -u avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_set_tracker.hh:1.1.2.1 avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_set_tracker.hh:1.1.2.2
--- avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_set_tracker.hh:1.1.2.1 Mon Dec 15 10:05:48 2003
+++ avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_set_tracker.hh Tue Dec 16 20:02:52 2003
@@ -14,14 +14,11 @@
#include "third-party/Loki/Singleton.h"
#endif
-#ifndef AVD_MESSAGE_CLOSURE_HH
-#include "avd_message_closure.hh"
-#endif
#ifndef AVD_MESSAGE_TYPE_SET_HH
#include "avd_message_type_set.hh"
#endif
-
+class avdMessageTypeBase;
class _avdMessageSetTracker{
public:
bool Register(const std::string &id, avdMessageTypeSet *ts)
@@ -44,7 +41,7 @@
typedef Loki::AssocVector<std::string, avdMessageTypeSet *>::iterator Iterator;
IdToTSMap m_associations;
};
-typedef Loki::AssocVector<std::string, avdMessageType *>::iterator
+typedef Loki::AssocVector<std::string, avdMessageTypeBase *>::iterator
avdMessageTypeIterator;
typedef Loki::SingletonHolder<_avdMessageSetTracker> avdMessageSetTracker;
typedef Loki::AssocVector<std::string, avdMessageTypeSet *>::iterator
Index: avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_type_set.hh
diff -u avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_type_set.hh:1.1.2.1 avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_type_set.hh:1.1.2.2
--- avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_type_set.hh:1.1.2.1 Mon Dec 15 10:05:48 2003
+++ avida/current/source/qt-viewer/exp/exp_cleanup2/avd_message_type_set.hh Tue Dec 16 20:02:52 2003
@@ -14,30 +14,30 @@
#include "third-party/Loki/Singleton.h"
#endif
-#ifndef AVD_MESSAGE_CLOSURE_HH
-#include "avd_message_closure.hh"
+#ifndef AVD_MESSAGE_TYPE_BASE_HH
+#include "avd_message_type_base.hh"
#endif
class avdMessageTypeSet{
public:
- bool Register(const std::string &id, avdMessageType *mt)
+ bool Register(const std::string &id, const avdMessageTypeBase *mt)
{ return m_associations.insert(IdToMTMap::value_type(id, mt)).second; }
bool Unregister(const std::string &id)
{ return m_associations.erase(id) == 1; }
- avdMessageType *GetTypeTracker(const std::string &id){
+ const avdMessageTypeBase *GetTypeTracker(const std::string &id){
IdToMTMap::iterator i = m_associations.find(id);
if (i != m_associations.end()) return i->second;
return 0;
}
- Loki::AssocVector<std::string, avdMessageType *>::iterator begin()
+ Loki::AssocVector<std::string, const avdMessageTypeBase *>::iterator begin()
{ return m_associations.begin(); }
- Loki::AssocVector<std::string, avdMessageType *>::iterator end()
+ Loki::AssocVector<std::string, const avdMessageTypeBase *>::iterator end()
{ return m_associations.end(); }
- Loki::AssocVector<std::string, avdMessageType *>::size_type size()
+ Loki::AssocVector<std::string, const avdMessageTypeBase *>::size_type size()
{ return m_associations.size(); }
protected:
- typedef Loki::AssocVector<std::string, avdMessageType *> IdToMTMap;
- typedef Loki::AssocVector<std::string, avdMessageType *>::iterator Iterator;
+ typedef Loki::AssocVector<std::string, const avdMessageTypeBase *> IdToMTMap;
+ typedef Loki::AssocVector<std::string, const avdMessageTypeBase *>::iterator Iterator;
IdToMTMap m_associations;
};
Index: avida/current/source/qt-viewer/exp/exp_cleanup2/demo_base_t.cc
diff -u avida/current/source/qt-viewer/exp/exp_cleanup2/demo_base_t.cc:1.1.2.1 avida/current/source/qt-viewer/exp/exp_cleanup2/demo_base_t.cc:1.1.2.2
--- avida/current/source/qt-viewer/exp/exp_cleanup2/demo_base_t.cc:1.1.2.1 Mon Dec 15 10:05:48 2003
+++ avida/current/source/qt-viewer/exp/exp_cleanup2/demo_base_t.cc Tue Dec 16 20:02:52 2003
@@ -12,21 +12,23 @@
using namespace std;
-class cTemplateTest : public test_case {
-public: virtual void test() {
- test_is_true(true);
-} };
-
-class cTestSuite : public test_case {
-public: cTestSuite() : test_case() {
- adopt_test_case(new cTemplateTest);
-} };
+namespace demo_base_t {
+ class cTemplateTest : public test_case {
+ public: virtual void test() {
+ test_is_true(true);
+ } };
+
+ class cTestSuite : public test_case {
+ public: cTestSuite() : test_case() {
+ adopt_test_case(new cTemplateTest);
+ } };
+}
int main(int argc, char *argv[]){
cout << endl
<< "----------------------------------------" << endl
- << "Testing Template." << endl;
- cTestSuite t;
+ << "Demonstration of basic testing." << endl;
+ demo_base_t::cTestSuite t;
t.run_test();
cout << text_test_interpreter().interpretation(t.last_result());
return(t.last_result().success_count() != t.last_result().total_test_count());
More information about the Avida-cvs
mailing list