diff --git a/test/ndnSIM-api.cc b/test/ndnSIM-api.cc
index b472850..e1bd2aa 100644
--- a/test/ndnSIM-api.cc
+++ b/test/ndnSIM-api.cc
@@ -59,7 +59,7 @@
 
 private:
   void
-  GotData (Ptr<const ndn::Interest>, Ptr<const ndn::ContentObject>)
+  GotData (Ptr<const ndn::Interest>, Ptr<const ndn::Data>)
   {
     datas++;
   }
diff --git a/test/ndnSIM-serialization.cc b/test/ndnSIM-serialization.cc
index 70a10a7..fee40b1 100644
--- a/test/ndnSIM-serialization.cc
+++ b/test/ndnSIM-serialization.cc
@@ -98,9 +98,9 @@
 }
 
 void
-ContentObjectSerializationTest::DoRun ()
+DataSerializationTest::DoRun ()
 {
-  Ptr<ContentObject> source = Create<ContentObject> (Create<Packet> (1024));
+  Ptr<Data> source = Create<Data> (Create<Packet> (1024));
   
   source->SetName (Create<Name> (boost::lexical_cast<Name> ("/test/test2/1")));
   NS_TEST_ASSERT_MSG_EQ (source->GetName (), boost::lexical_cast<Name> ("/test/test2/1"), "set/get name failed");
@@ -122,7 +122,7 @@
   packet = wire::ndnSIM::Data::ToWire (source);
   NS_TEST_ASSERT_MSG_EQ (packet->GetSize (), static_cast<unsigned int> (size + 4), "Signature size should have increased by 4");
 
-  Ptr<ContentObject> target = wire::ndnSIM::Data::FromWire (packet);
+  Ptr<Data> target = wire::ndnSIM::Data::FromWire (packet);
   
   NS_TEST_ASSERT_MSG_EQ (source->GetName ()     , target->GetName ()     , "source/target name failed");
   NS_TEST_ASSERT_MSG_EQ (source->GetFreshness (), target->GetFreshness (), "source/target freshness failed");
diff --git a/test/ndnSIM-serialization.h b/test/ndnSIM-serialization.h
index ff52fd2..6d2015b 100644
--- a/test/ndnSIM-serialization.h
+++ b/test/ndnSIM-serialization.h
@@ -39,11 +39,11 @@
   virtual void DoRun ();
 };
 
-class ContentObjectSerializationTest : public TestCase
+class DataSerializationTest : public TestCase
 {
 public:
-  ContentObjectSerializationTest ()
-    : TestCase ("ContentObject Serialization Test")
+  DataSerializationTest ()
+    : TestCase ("Data Serialization Test")
   {
   }
     
diff --git a/test/ndnSIM-tests.cc b/test/ndnSIM-tests.cc
index face35e..c6b4d6e 100644
--- a/test/ndnSIM-tests.cc
+++ b/test/ndnSIM-tests.cc
@@ -38,7 +38,7 @@
     SetDataDir (NS_TEST_SOURCEDIR);
 
     AddTestCase (new InterestSerializationTest (), TestCase::QUICK);
-    AddTestCase (new ContentObjectSerializationTest (), TestCase::QUICK);
+    AddTestCase (new DataSerializationTest (), TestCase::QUICK);
     AddTestCase (new FibEntryTest (), TestCase::QUICK);
     AddTestCase (new PitTest (), TestCase::QUICK);
     AddTestCase (new ApiTest (), TestCase::QUICK);
