/**
  * Test Get Umpteenth First
  *
  * @param integer $n Umpteenth Number
  *
  * @return void
  *
  * @dataProvider providerTestUmpteenth
  */
 public function testGetUmpteenthLastFirst($n)
 {
     $path = realpath(__DIR__ . "/../../resources/") . "/";
     $newFinder = new NachoNerd\Silex\Finder\Extensions\Finder();
     $oldFinder = new Symfony\Component\Finder\Finder();
     $oldFinder->sort(function ($a, $b) {
         return $b->getMTime() - $a->getMTime();
     })->in($path);
     $newFinder->sortByModifiedTimeDesc()->in($path);
     $newFinder = $newFinder->getNFirst($n);
     $filesOldWay = array();
     $j = 0;
     foreach ($oldFinder as $files) {
         if ($j == $n) {
             break;
         }
         $j++;
         $filesOldWay[] = $files;
     }
     $filesNewWay = array();
     foreach ($newFinder as $files) {
         $filesNewWay[] = $files;
     }
     $this->assertEquals($filesOldWay, $filesNewWay);
 }
 /**
  * Test Register Finder
  *
  * @param integer $n Umpteenth Number
  *
  * @return void
  *
  * @dataProvider providerTestUmpteenth
  */
 public function testIntegratorSuccess($n)
 {
     $path = realpath(__DIR__ . "/../resources/") . "/";
     $oldFinder = new Symfony\Component\Finder\Finder();
     $app = new Silex\Application();
     $app->register(new \NachoNerd\Silex\Finder\Provider());
     $app->boot();
     $app['nn.finder']->sortByModifiedTimeDesc()->in($path);
     $newFinder = $app['nn.finder']->getNFirst($n);
     $filesNewWay = array();
     foreach ($newFinder as $files) {
         $filesNewWay[] = $files;
     }
     $oldFinder->sort(function ($a, $b) {
         return $b->getMTime() - $a->getMTime();
     })->in($path);
     $filesOldWay = array();
     $j = 0;
     foreach ($oldFinder as $files) {
         if ($j == $n) {
             break;
         }
         $j++;
         $filesOldWay[] = $files;
     }
     $this->assertEquals($filesOldWay, $filesNewWay);
 }