From 3d28e956e3732bcd9eb7646ae07dfb99bf532e1f Mon Sep 17 00:00:00 2001
From: Francois Bleibel <fbleibel@gmail.com>
Date: Mon, 21 Jun 2010 16:00:31 +0900
Subject: [PATCH] Added forgotten test file test_signalcast.cpp

---
 src/signal/signal-caster.cpp    |  2 ++
 unitTesting/test_signalcast.cpp | 49 +++++++++++++++++++++++++++++++++
 2 files changed, 51 insertions(+)
 create mode 100644 unitTesting/test_signalcast.cpp

diff --git a/src/signal/signal-caster.cpp b/src/signal/signal-caster.cpp
index 696fc4d..84f3f42 100644
--- a/src/signal/signal-caster.cpp
+++ b/src/signal/signal-caster.cpp
@@ -48,6 +48,7 @@ void SignalCaster::disp(const any& object, ostream& os) {
 	const char* type_name = object.type().name();
 	map<string, cast_functions_type>::iterator it =
 			functions_.find(type_name);
+
 	if ( it == functions_.end() )
 		throw ExceptionSignal(ExceptionSignal::BAD_CAST); //TODO: throw "cast not registered" exception
 	(*it).second.get<0>()(object, os); // call display function (tuple index 0)
@@ -65,6 +66,7 @@ void SignalCaster::trace(const any& object, ostream& os) {
 any SignalCaster::cast(const type_info& type, istringstream& iss) {
 	const char* type_name = type.name();
 	map<string, cast_functions_type>::iterator it =	functions_.find(type_name);
+
 	if ( it == functions_.end() )
 		throw ExceptionSignal(ExceptionSignal::BAD_CAST);; //TODO: throw "cast not registered" exception
 	return (*it).second.get<1>()(iss); // call cast function (tuple index 1)
diff --git a/unitTesting/test_signalcast.cpp b/unitTesting/test_signalcast.cpp
new file mode 100644
index 0000000..45f3c15
--- /dev/null
+++ b/unitTesting/test_signalcast.cpp
@@ -0,0 +1,49 @@
+/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ * Copyright Projet JRL-JAPAN, Tsukuba, 2007
+ *+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ *
+ * File:      test_entity.cc
+ * Project:   dynamicGraph
+ * Author:    François Bleibel
+ *
+ * Version control
+ * ===============
+ *
+ *  $Id$
+ *
+ * Description
+ * ============
+ *
+ *
+ * ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
+
+/* -------------------------------------------------------------------------- */
+/* --- INCLUDES ------------------------------------------------------------- */
+/* -------------------------------------------------------------------------- */
+
+
+#include <string>
+#include <iostream>
+#include <cstdlib>
+
+#include <dynamic-graph/factory.h>
+#include <dynamic-graph/entity.h>
+#include <dynamic-graph/debug.h>
+#include <dynamic-graph/pool.h>
+#include <dynamic-graph/signal.h>
+
+#include <memory>
+
+using namespace std;
+using namespace dynamicgraph;
+
+main() {
+	Signal<int, int> mySignal("out");
+	istringstream value("5");
+	cout << "[cast] Setting signal value to " << value.str() << endl;
+	mySignal.set(value); // use "set" operation
+	cout << "[disp] The value read is ";
+	mySignal.get(cout);
+	cout << "[trace] Printing out trace: ";
+	mySignal.trace(cout);
+}
-- 
GitLab