Additional cleaning. Repairing tests.
diff --git a/test/fw-per-fib-limits.cc b/test/fw-per-fib-limits.cc
deleted file mode 100644
index 555aca6..0000000
--- a/test/fw-per-fib-limits.cc
+++ /dev/null
@@ -1,166 +0,0 @@
-/* -*-  Mode: C++; c-file-style: "gnu"; indent-tabs-mode:nil; -*- */
-/*
- * Copyright (c) 2011,2012 University of California, Los Angeles
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation;
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- *
- * Author: Alexander Afanasyev <alexander.afanasyev@ucla.edu>
- */
-
-#include "fw-per-fib-limits.h"
-#include "ns3/core-module.h"
-#include "ns3/ndnSIM-module.h"
-#include "ns3/point-to-point-module.h"
-
-#include <boost/lexical_cast.hpp>
-
-NS_LOG_COMPONENT_DEFINE ("ndn.test.fw.PerFibLimits");
-
-namespace ns3 {
-namespace ndn {
-
-void Decay (Ptr<fib::Entry> entry)
-{
-  entry->GetLimits ().DecayCurrentLimit ();
-}
-
-
-template<class T>
-void
-PrintTracedValue (std::string context, T oldValue, T newValue)
-{
-  NS_LOG_DEBUG (context << ": " <<
-                oldValue << " => " << newValue);
-}
-
-void
-Test1 (Ptr<fib::Entry> entry)
-{
-  entry->GetLimits ().IsBelowLimit ();
-  entry->GetLimits ().DecreaseLimit ();
-}
-
-void
-Test2 (Ptr<fib::Entry> entry)
-{
-  entry->GetLimits ().RemoveOutstanding ();
-  for (uint32_t i = 0; i < 40; i++)
-    entry->GetLimits ().IncreaseLimit ();
-}
-
-void
-FwPerFibLimits::CheckCurMaxLimit (Ptr<fib::Entry> entry, double amount)
-{
-  NS_TEST_ASSERT_MSG_EQ_TOL ((double)entry->GetLimits ().m_curMaxLimit, amount, 0.1, "");
-}
-
-void
-FwPerFibLimits::CheckOutstanding (Ptr<fib::Entry> entry, uint32_t amount)
-{
-  NS_TEST_ASSERT_MSG_EQ ((double)entry->GetLimits ().m_outstanding, amount, "");
-}
-
-// void 
-// FwPerFibLimits::Check2 (Ptr<fib::Entry> entry)
-// {
-//   NS_TEST_ASSERT_MSG_EQ ((double)entry->GetLimits ().m_outstanding, 0, "");
-// }
-
-void
-FwPerFibLimits::DoRun ()
-{
-  Simulator::Destroy ();
-
-  NodeContainer nodes;
-  nodes.Create (2);
-
-  PointToPointHelper p2pHelper;
-  p2pHelper.Install (nodes);
-  
-  StackHelper ndn;
-  ndn.SetForwardingStrategy ("ns3::ndn::fw::PerFibLimits");
-  ndn.Install (nodes);
-
-  Ptr<Fib> fib = nodes.Get (0)->GetObject<Fib> ();
-  ndn.AddRoute (nodes.Get (0), "/bla", 0, 10);
-
-  Ptr<fib::Entry> entry = fib->Begin ();
-  
-  bool ok = entry->GetLimits ().TraceConnect ("CurMaxLimit", "fibEntry.curMax", MakeCallback (PrintTracedValue<double>));
-  NS_TEST_ASSERT_MSG_EQ (ok, true, "");
-
-  ok = entry->GetLimits ().TraceConnect ("Outstanding", "fibEntry.out", MakeCallback (PrintTracedValue<uint32_t>));
-  NS_TEST_ASSERT_MSG_EQ (ok, true, "");
-
-  ok = nodes.Get (0)->GetObject<L3Protocol> ()->GetFace (0)->GetLimits ().TraceConnect ("CurMaxLimit", "face.curMax", MakeCallback (PrintTracedValue<double>));
-  NS_TEST_ASSERT_MSG_EQ (ok, true, "");
-  nodes.Get (0)->GetObject<L3Protocol> ()->GetFace (0)->GetLimits ().TraceDisconnect ("CurMaxLimit", "face.curMax", MakeCallback (PrintTracedValue<double>));
-
-  ok = nodes.Get (0)->GetObject<L3Protocol> ()->GetFace (0)->GetLimits ().TraceConnect ("Outstanding", "face.out",    MakeCallback (PrintTracedValue<uint32_t>));
-  NS_TEST_ASSERT_MSG_EQ (ok, true, "");
-  nodes.Get (0)->GetObject<L3Protocol> ()->GetFace (0)->GetLimits ().TraceDisconnect ("Outstanding", "face.out",    MakeCallback (PrintTracedValue<uint32_t>));
-
-  Config::Connect ("/NodeList/0/$ns3::ndn::L3Protocol/FaceList/*/Limits/CurMaxLimit", MakeCallback (PrintTracedValue<double>));
-  Config::Connect ("/NodeList/0/$ns3::ndn::L3Protocol/FaceList/*/Limits/Outstanding", MakeCallback (PrintTracedValue<uint32_t>));
-
-  nodes.Get (0)->GetObject<L3Protocol> ()->GetFace (0)->GetLimits ().SetMaxLimit (100);
-  
-  entry->GetLimits ().SetMaxLimit (100);
-  NS_TEST_ASSERT_MSG_EQ_TOL ((double)entry->GetLimits ().m_curMaxLimit, 100, 0.1, "");
-  
-  entry->GetLimits ().DecreaseLimit ();
-  NS_TEST_ASSERT_MSG_EQ_TOL ((double)entry->GetLimits ().m_curMaxLimit, 50, 0.1, "");
-
-  entry = fib->Begin ();
-
-  NS_LOG_DEBUG (entry);
-  Simulator::Schedule (Seconds (0.1), Decay, entry);
-  Simulator::Schedule (Seconds (25.0), Decay, entry);
-  Simulator::Schedule (Seconds (28.0), Decay, entry);
-  Simulator::Schedule (Seconds (40.0), Decay, entry);
-  Simulator::Schedule (Seconds (60.0), Decay, entry);
-  Simulator::Schedule (Seconds (100.0), Decay, entry);
-
-  Simulator::Schedule (Seconds (100.1), &FwPerFibLimits::CheckCurMaxLimit, this, entry, 81.5);
-
-  Simulator::Schedule (Seconds (100.5), &FwPerFibLimits::CheckOutstanding, this, entry, 0);
-  Simulator::Schedule (Seconds (101.0), Test1, entry);
-  Simulator::Schedule (Seconds (101.5), &FwPerFibLimits::CheckOutstanding, this, entry, 1);
-  Simulator::Schedule (Seconds (101.5), &FwPerFibLimits::CheckCurMaxLimit, this, entry, 40.75);
-
-  Simulator::Schedule (Seconds (102.0), Test2, entry);
-  Simulator::Schedule (Seconds (102.5), &FwPerFibLimits::CheckOutstanding, this, entry, 0);
-  Simulator::Schedule (Seconds (102.5), &FwPerFibLimits::CheckCurMaxLimit, this, entry, 41.75);
-
-  AppHelper consumer ("ns3::ndn::ConsumerBatches");
-  consumer.SetPrefix ("/bla");
-  consumer.SetAttribute ("Batches", StringValue ("105 1"));
-  consumer.SetAttribute ("LifeTime", StringValue ("1s"));
-  consumer.Install (nodes.Get (0))
-    .Stop (Seconds (110.0));
-
-  Simulator::Schedule (Seconds (105.1), &FwPerFibLimits::CheckOutstanding, this, entry, 1);
-  Simulator::Schedule (Seconds (106.7), &FwPerFibLimits::CheckOutstanding, this, entry, 0);
-
-  Simulator::Schedule (Seconds (109.0), &FwPerFibLimits::CheckCurMaxLimit, this, entry, 14.27);
-  Simulator::Schedule (Seconds (119.9), &FwPerFibLimits::CheckCurMaxLimit, this, entry, 16.32);
-  
-  Simulator::Stop (Seconds (120.0));
-  Simulator::Run ();
- 
-  Simulator::Destroy ();
-}
-
-} // namespace ndn
-} // namespace ns3
diff --git a/test/fw-per-fib-limits.h b/test/fw-per-fib-limits.h
deleted file mode 100644
index 51bd0c4..0000000
--- a/test/fw-per-fib-limits.h
+++ /dev/null
@@ -1,52 +0,0 @@
-/* -*-  Mode: C++; c-file-style: "gnu"; indent-tabs-mode:nil; -*- */
-/*
- * Copyright (c) 2011 University of California, Los Angeles
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation;
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- *
- * Author: Alexander Afanasyev <alexander.afanasyev@ucla.edu>
- */
-
-#ifndef NDNSIM_TEST_FW_PER_FIB_LIMITS_H
-#define NDNSIM_TEST_FW_PER_FIB_LIMITS_H
-
-#include "ns3/test.h"
-#include "ns3/ptr.h"
-
-namespace ns3 {
-namespace ndn {
-
-class Fib;
-namespace fib { class Entry; }
-  
-class FwPerFibLimits : public TestCase
-{
-public:
-  FwPerFibLimits ()
-    : TestCase ("Test for ndn::fw::PerFibLimits")
-  {
-  }
-    
-private:
-  virtual void DoRun ();
-
-  void CheckCurMaxLimit (Ptr<fib::Entry> entry, double amount);
-  void CheckOutstanding (Ptr<fib::Entry> entry, uint32_t amount);
-  // void Check2 (Ptr<fib::Entry> entry);
-};
-  
-} // namespace ndn
-} // namespace ns3
-
-#endif // NDNSIM_TEST_FW_PER_FIB_LIMITS_H
diff --git a/test/generic-tests.cc b/test/generic-tests.cc
deleted file mode 100644
index 6fdc1a7..0000000
--- a/test/generic-tests.cc
+++ /dev/null
@@ -1,110 +0,0 @@
-/* -*-  Mode: C++; c-file-style: "gnu"; indent-tabs-mode:nil; -*- */
-/*
- * Copyright (c) 2011,2012 University of California, Los Angeles
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation;
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- *
- * Author: Alexander Afanasyev <alexander.afanasyev@ucla.edu>
- */
-
-#include "generic-tests.h"
-#include "ns3/core-module.h"
-#include "ns3/ndnSIM-module.h"
-#include "ns3/point-to-point-module.h"
-
-#include "../model/pit/ndn-pit-impl.h"
-#include "../utils/trie/persistent-policy.h"
-#include "../apps/ndn-producer.h"
-
-#include <boost/lexical_cast.hpp>
-#include <boost/shared_ptr.hpp>
-#include <boost/make_shared.hpp>
-
-using namespace std;
-using namespace boost;
-
-NS_LOG_COMPONENT_DEFINE ("ndn.test.Generic");
-
-namespace ns3 {
-namespace ndn {
-
-struct Bla {
-};
-
-void
-GenericTests::DoRun ()
-{
-  NodeContainer nodes;
-  nodes.Create (2);
-
-  PointToPointHelper p2p;
-  p2p.Install (nodes);
-  
-  StackHelper ndn;
-  ndn.SetDefaultRoutes (true);
-  ndn.Install (nodes);
-
-  Ptr<Node> node = nodes.Get (0);
-  
-  Ptr<Pit> pit = node->GetObject<Pit> ();
-  
-  Ptr<InterestHeader> header = Create<InterestHeader> ();
-  header->SetName (Create<NameComponents> ("/bla"));
-  header->SetInterestLifetime (Seconds (100));
-
-  Ptr<pit::Entry> e1 = pit->Create (header);
-  NS_ASSERT (e1 != 0);
-
-  header = Create<InterestHeader> ();
-  header->SetName (Create<NameComponents> ("/foo"));
-  header->SetInterestLifetime (Seconds (100));
-
-  Ptr<pit::Entry> e2 = pit->Create (header);
-  NS_ASSERT (e2 != 0);
-
-  list< Ptr< pit::Entry > > l;
-
-  l.push_back (e1);
-  l.push_back (e2);
-
-  BOOST_FOREACH (Ptr<pit::Entry> entry, l)
-    {
-      cout << "* " << entry->GetPrefix () << endl;
-    }
-
-  l.remove (e2);
-  
-  BOOST_FOREACH (Ptr<pit::Entry> entry, l)
-    {
-      cout << "* " << entry->GetPrefix () << endl;
-    }
-
-
-  cerr << "===========\n\n";
-
-  shared_ptr<Bla> p1 = make_shared <Bla> ();
-  shared_ptr<Bla> p2 = make_shared <Bla> ();
-
-  if (p1 < p2)
-    {
-      cerr << "They are equal\n";
-    }
-
-
-  Time x = Seconds (-1);
-  cout << x << endl;
-}
-
-} // namespace ndn
-} // namespace ns3
diff --git a/test/generic-tests.h b/test/generic-tests.h
deleted file mode 100644
index 56b1775..0000000
--- a/test/generic-tests.h
+++ /dev/null
@@ -1,46 +0,0 @@
-/* -*-  Mode: C++; c-file-style: "gnu"; indent-tabs-mode:nil; -*- */
-/*
- * Copyright (c) 2011 University of California, Los Angeles
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation;
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- *
- * Author: Alexander Afanasyev <alexander.afanasyev@ucla.edu>
- */
-
-#ifndef GENERIC_TESTS_H
-#define GENERIC_TESTS_H
-
-#include "ns3/test.h"
-#include "ns3/ptr.h"
-
-namespace ns3 {
-namespace ndn {
-
-class GenericTests :
-    public TestCase
-{
-public:
-  GenericTests ()
-    : TestCase ("Generic tests")
-  {
-  }
-    
-private:
-  virtual void DoRun ();
-};
-  
-} // namespace ndn
-} // namespace ns3
-
-#endif // GENERIC_TESTS_H
diff --git a/test/ndnSIM-stats-tree.cc b/test/ndnSIM-stats-tree.cc
deleted file mode 100644
index ee7c235..0000000
--- a/test/ndnSIM-stats-tree.cc
+++ /dev/null
@@ -1,222 +0,0 @@
-/* -*-  Mode: C++; c-file-style: "gnu"; indent-tabs-mode:nil; -*- */
-/*
- * Copyright (c) 2011,2012 University of California, Los Angeles
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation;
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- *
- * Author: Alexander Afanasyev <alexander.afanasyev@ucla.edu>
- */
-
-#include "ndnSIM-stats-tree.h"
-#include "ns3/core-module.h"
-#include "ns3/point-to-point-module.h"
-#include "ns3/ndnSIM-module.h"
-#include "../utils/stats/stats-tree.h"
-#include "../apps/ndn-producer.h"
-
-#include <boost/lexical_cast.hpp>
-
-NS_LOG_COMPONENT_DEFINE ("ndn.StatsTreeTest");
-
-namespace ns3 {
-
-using namespace ndn;
-using namespace ndn::ndnSIM;
-
-void
-StatsTreeTest::DoRun ()
-{
-  BasicTests ();
-  SimpleScenario ();
-}
-
-
-void
-StatsTreeTest::BasicTests ()
-{
-  StackHelper ndn;
-
-  Ptr<Node> node1   = CreateObject<Node> ();
-  Ptr<App> app1 = CreateObject<Producer> ();
-  node1->AddApplication (app1);
-  ndn.Install (node1);
-
-  Ptr<Face> face1 = CreateObject<AppFace> (app1);
-  Ptr<Face> face2 = CreateObject<AppFace> (app1);
-  Ptr<Face> face3 = CreateObject<AppFace> (app1);
-
-  node1->GetObject<L3Protocol> ()->AddFace (face1);
-  node1->GetObject<L3Protocol> ()->AddFace (face2);
-  node1->GetObject<L3Protocol> ()->AddFace (face3);
-
-  // NS_LOG_DEBUG (*face1 << ", " << *face2 << ", " << *face3);
-  
-  NS_TEST_ASSERT_MSG_NE (*face1, *face2, "Face1 should not be equal to Face2");
-  NS_TEST_ASSERT_MSG_NE (face1, face2, "&Face1 should not be equal to &Face2");
-  NS_TEST_ASSERT_MSG_NE (*face2, *face3, "Face2 should not be equal to Face3");
-  NS_TEST_ASSERT_MSG_NE (face2, face3, "&Face2 should not be equal to &Face3");
-
-  // hack
-  face3->SetId (0);
-  NS_TEST_ASSERT_MSG_EQ (*face1, *face3, "Face1 should be now equal to Face3");
-  NS_TEST_ASSERT_MSG_NE (face1, face3, "&Face1 should not be equal to &Face3");
-
-  LoadStatsNode::stats_container bla;
-  bla[face1].Step (); 
-  bla[face2].Step ();
-
-  NS_TEST_ASSERT_MSG_EQ (bla.size (), 2, "Should be two entries in the container");
-
-  bla[face3].Step ();
-  NS_TEST_ASSERT_MSG_EQ (bla.size (), 2, "Should be still two entries in the container");
-
-  LoadStatsNode node;
-  node.AddIncoming (face1);
-  node.AddIncoming (face1);
-  node.AddIncoming (face2);
-  node.AddIncoming (face3);
-
-  NS_TEST_ASSERT_MSG_EQ (node.incoming ().size (), 2, "Incoming should have two entries again");
-  NS_TEST_ASSERT_MSG_EQ (node.outgoing ().size (), 0, "Outgoing should have 0 entries");
-
-  node.Satisfy ();
-  node.Satisfy ();
-  NS_TEST_ASSERT_MSG_EQ (node.incoming ().size (), 2, "Incoming should have two entries again");
-  NS_TEST_ASSERT_MSG_EQ (node.outgoing ().size (), 0, "Outgoing should have 0 entries");
-
-  node.Timeout ();
-  NS_TEST_ASSERT_MSG_EQ (node.incoming ().size (), 2, "Incoming should have two entries again");
-  NS_TEST_ASSERT_MSG_EQ (node.outgoing ().size (), 0, "Outgoing should have 0 entries");
-
-  // NS_LOG_DEBUG ("count:      " << node.incoming ().find (face1)->second.count ());
-  // NS_LOG_DEBUG ("satisfied:  " << node.incoming ().find (face1)->second.satisfied ());
-  // NS_LOG_DEBUG ("unsatisfied:" << node.incoming ().find (face1)->second.unsatisfied ());
-
-  node.Step ();
-  
-  // NS_LOG_DEBUG ("count:      " << node.incoming ().find (face1)->second.count ());
-  // NS_LOG_DEBUG ("satisfied:  " << node.incoming ().find (face1)->second.satisfied ());
-  // NS_LOG_DEBUG ("unsatisfied:" << node.incoming ().find (face1)->second.unsatisfied ());
-  
-  LoadStats::stats_tuple tuple = node.incoming ().find (face1)->second.GetSatisfiedRatio ();
-  // NS_LOG_DEBUG ("In, face1, satisfied ratio: " << tuple.get<0> () << ", " << tuple.get<1> () << ", " << tuple.get<2> ());
-
-  NS_TEST_ASSERT_MSG_EQ_TOL (tuple.get<0> (), 0.667, 0.01, "Satisfied ratio should be ~ 2/3");
-  NS_TEST_ASSERT_MSG_LT     (tuple.get<1> (), 0,           "Satisfied ratio should be less 0 (invalid)");
-  NS_TEST_ASSERT_MSG_LT     (tuple.get<2> (), 0,           "Satisfied ratio should be less 0 (invalid)");
-  
-  tuple = node.incoming ().find (face1)->second.GetUnsatisfiedRatio ();
-  // NS_LOG_DEBUG ("In, face1, unsatisfied ratio: " << tuple.get<0> () << ", " << tuple.get<1> () << ", " << tuple.get<2> ());
-
-  NS_TEST_ASSERT_MSG_EQ_TOL (tuple.get<0> (), 0.333, 0.01, "Satisfied ratio should be ~ 1/3");
-  NS_TEST_ASSERT_MSG_LT     (tuple.get<1> (), 0,           "Satisfied ratio should be less 0 (invalid)");
-  NS_TEST_ASSERT_MSG_LT     (tuple.get<2> (), 0,           "Satisfied ratio should be less 0 (invalid)");
-
-  node.AddIncoming (face1);
-  node.Timeout ();
-  node.Step ();
-
-  // NS_LOG_DEBUG ("After decaying");
-  
-  tuple = node.incoming ().find (face1)->second.GetSatisfiedRatio ();
-  // NS_LOG_DEBUG ("In, face1, satisfied ratio: " << tuple.get<0> () << ", " << tuple.get<1> () << ", " << tuple.get<2> ());
-
-  NS_TEST_ASSERT_MSG_EQ_TOL (tuple.get<0> (), 0.473776, 0.01, "");
-  // NS_TEST_ASSERT_MSG_EQ_TOL (tuple.get<1> (), 0.489, 0.01, "");
-  // NS_TEST_ASSERT_MSG_LT     (tuple.get<2> (), 0,           "");
-  
-  tuple = node.incoming ().find (face1)->second.GetUnsatisfiedRatio ();
-  // NS_LOG_DEBUG ("In, face1, unsatisfied ratio: " << tuple.get<0> () << ", " << tuple.get<1> () << ", " << tuple.get<2> ());
-
-  NS_TEST_ASSERT_MSG_EQ_TOL (tuple.get<0> (), 0.526, 0.01, "");
-  // NS_TEST_ASSERT_MSG_EQ_TOL (tuple.get<1> (), 0.504, 0.01, "");
-  // NS_TEST_ASSERT_MSG_LT     (tuple.get<2> (), 0,           "");  
-
-  for (uint32_t i = 0; i < 10; i++ )
-    node.Step ();
-
-  // NS_LOG_DEBUG ("After more decaying");
-
-  tuple = node.incoming ().find (face1)->second.GetSatisfiedRatio ();
-  // NS_LOG_DEBUG ("In, face1, satisfied ratio: " << tuple.get<0> () << ", " << tuple.get<1> () << ", " << tuple.get<2> ());
-
-  NS_TEST_ASSERT_MSG_LT (tuple.get<0> (), 0, "");
-  // NS_TEST_ASSERT_MSG_LT (tuple.get<1> (), 0, "");
-  // NS_TEST_ASSERT_MSG_LT (tuple.get<2> (), 0, "");
-  
-  tuple = node.incoming ().find (face1)->second.GetUnsatisfiedRatio ();
-  // NS_LOG_DEBUG ("In, face1, unsatisfied ratio: " << tuple.get<0> () << ", " << tuple.get<1> () << ", " << tuple.get<2> ());
-
-  NS_TEST_ASSERT_MSG_LT (tuple.get<0> (), 0, "");
-  // NS_TEST_ASSERT_MSG_LT (tuple.get<1> (), 0, "");
-  // NS_TEST_ASSERT_MSG_LT (tuple.get<2> (), 0, "");
-
-  /////////////////////////////////////////////////////
-  //              Actual tree testing                //
-  /////////////////////////////////////////////////////
-
-  StatsTree tree;
-  tree.NewPitEntry ("/bla/bla/bla");
-  tree.NewPitEntry ("/bla/bla/bla");
-  tree.NewPitEntry ("/bla/bla/bla");
-  tree.NewPitEntry ("/foo/bar");
-  tree.NewPitEntry ("/bar/foo");
-  tree.NewPitEntry ("/tra/la/la");
-
-  tree.Incoming ("/bla/bla/bla", face1);
-  tree.Outgoing ("/foo/bar", face2);
-  tree.Satisfy  ("/bar/foo");
-  tree.Satisfy  ("/tra/la/la");
-  tree.Timeout  ("/tra/la/la");
-
-  tree.Step ();
-
-  // NS_TEST_ASSERT_MSG_EQ (boost::lexical_cast<std::string> (tree ["/"]),
-  //                        // "PIT: 0.479734, 0.0991713, 0.0332409/0.159911, 0.0330571, 0.0110803/0.0799556, 0.0165285, 0.00554015",
-  //                        "PIT: ration satisfied: 0.333333 0.333333 -1 / unsatisfied: 0.166667 0.166667 -1 ",
-  //                        "Something wrong with stats tree");
-  NS_TEST_ASSERT_MSG_EQ (boost::lexical_cast<std::string> (tree ["/"]),
-                         // "PIT: 0.479734, 0.0991713, 0.0332409/0.159911, 0.0330571, 0.0110803/0.0799556, 0.0165285, 0.00554015",
-                         "PIT: ration satisfied: 0.333333 -1 -1 / unsatisfied: 0.166667 -1 -1 ",
-                         "Something wrong with stats tree");
-
-  NS_TEST_ASSERT_MSG_NE (&tree ["/bla/bla/bla"],
-                         &tree ["/"],
-                         "The stats tree should not be empty");
-  for (uint32_t i = 0; i < 9; i++)
-    {
-      tree.Step ();
-    }
-  NS_LOG_DEBUG (tree ["/bla/bla/bla"]);
-  NS_LOG_DEBUG (tree ["/"]);
-  NS_TEST_ASSERT_MSG_EQ (&tree ["/bla/bla/bla"],
-                         &tree ["/"],
-                         "The stats tree should be empty (only root node)");
-}
-
-
-
-void
-StatsTreeTest::SimpleScenario ()
-{
-  NodeContainer nodes;
-  nodes.Create (2);
-  PointToPointHelper p2pHelper;
-  p2pHelper.Install (nodes);
-
-
-  
-}
-
-}
diff --git a/test/ndnSIM-stats-tree.h b/test/ndnSIM-stats-tree.h
deleted file mode 100644
index a98a79f..0000000
--- a/test/ndnSIM-stats-tree.h
+++ /dev/null
@@ -1,50 +0,0 @@
-/* -*-  Mode: C++; c-file-style: "gnu"; indent-tabs-mode:nil; -*- */
-/*
- * Copyright (c) 2011 University of California, Los Angeles
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation;
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- *
- * Author: Alexander Afanasyev <alexander.afanasyev@ucla.edu>
- */
-
-#ifndef NDNSIM_TEST_STATS_TREE_H
-#define NDNSIM_TEST_STATS_TREE_H
-
-#include "ns3/test.h"
-#include "ns3/ptr.h"
-
-namespace ns3
-{
-
-class StatsTreeTest : public TestCase
-{
-public:
-  StatsTreeTest ()
-    : TestCase ("StatsTree test")
-  {
-  }
-    
-private:
-  virtual void DoRun ();
-
-  void
-  BasicTests ();
-
-  void
-  SimpleScenario ();
-};
-  
-}
-
-#endif // NDNSIM_TEST_STATS_TREE_H
diff --git a/test/ndnSIM-tests.cc b/test/ndnSIM-tests.cc
index 7242d98..004f761 100644
--- a/test/ndnSIM-tests.cc
+++ b/test/ndnSIM-tests.cc
@@ -23,9 +23,6 @@
 
 #include "ndnSIM-serialization.h"
 #include "ndnSIM-pit.h"
-#include "ndnSIM-stats-tree.h"
-#include "fw-per-fib-limits.h"
-#include "generic-tests.h"
 
 namespace ns3
 {
@@ -38,13 +35,9 @@
   {
     SetDataDir (NS_TEST_SOURCEDIR);
     
-    // AddTestCase (new InterestSerializationTest ());
-    // AddTestCase (new ContentObjectSerializationTest ());
-    // AddTestCase (new PitTest ());
-    // AddTestCase (new StatsTreeTest ());
-
-    // AddTestCase (new ndn::FwPerFibLimits ());
-    AddTestCase (new ndn::GenericTests ());
+    AddTestCase (new InterestSerializationTest ());
+    AddTestCase (new ContentObjectSerializationTest ());
+    AddTestCase (new PitTest ());
   }
 };