public function testDiffChangesets()
 {
     $hunk = new DifferentialHunkModern();
     $hunk->setChanges("+a\n b\n-c");
     $hunk->setNewOffset(1);
     $hunk->setNewLen(2);
     $left = new DifferentialChangeset();
     $left->attachHunks(array($hunk));
     $tests = array("+a\n b\n-c" => array(array(), array()), "+a\n x\n-c" => array(array(), array()), "+aa\n b\n-c" => array(array(1), array(11)), " b\n-c" => array(array(1), array()), "+a\n b\n c" => array(array(), array(13)), "+a\n x\n c" => array(array(), array(13)));
     foreach ($tests as $changes => $expected) {
         $hunk = new DifferentialHunkModern();
         $hunk->setChanges($changes);
         $hunk->setNewOffset(11);
         $hunk->setNewLen(3);
         $right = new DifferentialChangeset();
         $right->attachHunks(array($hunk));
         $parser = new DifferentialChangesetParser();
         $parser->setOriginals($left, $right);
         $this->assertEqual($expected, $parser->diffOriginals(), $changes);
     }
 }