diff --git a/test/test-fetch-manager.cc b/test/test-fetch-manager.cc
index 5abe47d..42d4b48 100644
--- a/test/test-fetch-manager.cc
+++ b/test/test-fetch-manager.cc
@@ -188,6 +188,45 @@
   executor->shutdown ();
 }
 
+
+BOOST_AUTO_TEST_CASE (TestFetcher2)
+{
+  INIT_LOGGERS ();
+
+  CcnxWrapperPtr ccnx = make_shared<CcnxWrapper> ();
+
+  Name baseName ("/base");
+  Name deviceName ("/device");
+  int i = 0;
+
+  ccnx->publishData (Name (baseName)(i), reinterpret_cast<const unsigned char*> (&i), sizeof(int), 30);
+
+
+  FetcherTestData data;
+  ExecutorPtr executor = make_shared<Executor>(1);
+  executor->start ();
+
+  Fetcher fetcher (ccnx,
+                   executor,
+                   bind (&FetcherTestData::onData, &data, _1, _2, _3, _4),
+                   bind (&FetcherTestData::finish, &data, _1, _2),
+                   bind (&FetcherTestData::onComplete, &data, _1),
+                   bind (&FetcherTestData::onFail, &data, _1),
+                   deviceName, Name ("/base"), 1, 1,
+                   boost::posix_time::seconds (5)); // this time is not precise
+
+  BOOST_CHECK_EQUAL (fetcher.IsActive (), false);
+  fetcher.RestartPipeline ();
+  BOOST_CHECK_EQUAL (fetcher.IsActive (), true);
+
+  usleep(7000000);
+  BOOST_CHECK_EQUAL (data.m_failed, true);
+
+  executor->shutdown ();
+}
+
+
+
 // BOOST_AUTO_TEST_CASE (CcnxWrapperSelector)
 // {
 
diff --git a/test/test-fs-watcher-delay.cc b/test/test-fs-watcher-delay.cc
index e658e2a..162d1d4 100644
--- a/test/test-fs-watcher-delay.cc
+++ b/test/test-fs-watcher-delay.cc
@@ -69,13 +69,15 @@
   
   
 
-  usleep(2000000);
+  usleep(10000000);
 
   // cleanup
   if (fs::exists(dir))
   {
     fs::remove_all(dir);
   }
+
+  usleep(1000000);
 }
 
 BOOST_AUTO_TEST_SUITE_END()
