Migrated blobdiff to new model. Now works.
Zachary Stevens [Sun, 8 Nov 2009 20:09:04 +0000 (20:09 +0000)]
lib/Gitalist/Controller/Root.pm
t/01app.t

index 2c41cd9..7e24e0b 100644 (file)
@@ -190,13 +190,13 @@ Exposes a given diff of a blob.
 
 sub blobdiff : Local {
   my ( $self, $c ) = @_;
-
-  my $commit = $self->_get_commit($c);
+  $c->stash(current_model => 'GitRepos');
+  my $commit = $self->_get_commit($c, $c->req->param('hb'));
   my $filename = $c->req->param('f')
               || croak("No file specified!");
-  my($tree, $patch) = $c->model()->diff(
+  my($tree, $patch) = $c->stash->{Project}->diff(
     commit => $commit,
-    parent => $c->req->param('hp') || '',
+    parent => $c->req->param('hpb') || '',
     file   => $filename,
     patch  => 1,
   );
@@ -366,9 +366,57 @@ sub search : Local {
 }
 
 sub search_help : Local {
+    # FIXME - implement search_help
+    Carp::croak "Not implemented.";
+}
+
+sub atom : Local {
+    # FIXME - implement atom
+    Carp::croak "Not implemented.";
+}
+
+sub rss : Local {
+    # FIXME - implement rss
+    Carp::croak "Not implemented.";
+}
+
+sub blobdiff_plain : Local {
+    # FIXME - implement blobdiff_plain
+    Carp::croak "Not implemented.";
+}
+
+sub blob_plain : Local {
+    # FIXME - implement blobdiff_plain
     Carp::croak "Not implemented.";
 }
 
+sub patch : Local {
+    # FIXME - implement patches
+    Carp::croak "Not implemented.";
+}
+
+sub patches : Local {
+    # FIXME - implement patches
+    Carp::croak "Not implemented.";
+}
+
+sub snapshot : Local {
+    # FIXME - implement snapshot
+    Carp::croak "Not implemented.";
+}
+
+sub history : Local {
+    # FIXME - implement history
+    Carp::croak "Not implemented.";
+}
+
+sub commitdiff_plain : Local {
+    # FIXME - implement commitdiff_plain
+    Carp::croak "Not implemented.";
+}
+
+
+
 =head2 auto
 
 Populate the header and footer. Perhaps not the best location.
index 2c2d9e5..42cbf90 100644 (file)
--- a/t/01app.t
+++ b/t/01app.t
@@ -29,6 +29,7 @@ is request('/summary?p=DoesNotExist')->code, 404,
   test('/commitdiff', 'h=36c6c6708b8360d7023e8a1649c45bcf9b3bd818');
   test('/tree', 'h=145dc3ef5d307be84cb9b325d70bd08aeed0eceb;hb=36c6c6708b8360d7023e8a1649c45bcf9b3bd818');
   test('/search', 'h=36c6c6708b8360d7023e8a1649c45bcf9b3bd818&f=&type=commit&text=added');
+  test('/blobdiff', 'f=file1;h=5716ca5987cbf97d6bb54920bea6adde242d87e6;hp=257cc5642cb1a054f08cc83f2d943e56fd3ebe99;hb=refs/heads/master;hpb=3bc0634310b9c62222bb0e724c11ffdfb297b4ac');
 }
 
 done_testing;
@@ -38,7 +39,7 @@ sub test_uri {
     $qs ||= '';
     my $request = "$uri?p=repo1;$qs";
     my $response = request($request);
-    ok($response->is_success, "ok $p - $uri");
+    ok($response->is_success, "ok $p - $uri - $qs");
 }
 
 sub curry_test_uri {