A directory containing the directories to show.
-If no repositories are found in this directory then Gitalist will
-search recursively in that directory for repositories.
+=item repos
+
+A list of directories containing repositories to show.
=item search_recursively
=item log
-The number of commits to show in the
+The number of commits to show in the summary, shortlog and longlog views.
=back
} elsif ($self->_repos_count && !$self->search_recursively) {
$class = 'Gitalist::Git::CollectionOfRepositories::FromListOfDirectories';
$args{repos} = $self->repos;
- } else {
+ } elsif($self->search_recursively) {
$class = 'Gitalist::Git::CollectionOfRepositories::FromDirectoryRecursive';
$args{repo_dir} = $self->repo_dir;
+ } else {
+ $class = 'Gitalist::Git::CollectionOfRepositories::FromDirectory';
+ $args{repo_dir} = $self->repo_dir;
}
return $class->new(%args);
use Catalyst::Response;
use Catalyst::Utils;
use Gitalist::Model::CollectionOfRepos;
-use File::Temp qw/tempdir/;
+use File::Temp qw/tempdir tempfile/;
my $mock_ctx_meta = Class::MOP::Class->create_anon_class( superclasses => ['Moose::Object'] );
$mock_ctx_meta->add_attribute($_, accessor => $_, required => 1) for qw/request response/;
{
my $i = test_with_config({ repo_dir => "$FindBin::Bin/lib/repositories"});
- is scalar($i->repositories->flatten), 6, 'Found 6 repos';
-}
-
-{
- my $i = test_with_config({ repo_dir => "$FindBin::Bin/lib"});
- is scalar($i->repositories->flatten), 6, 'Found 6 repos recursively';
- isa_ok $i, 'Gitalist::Git::CollectionOfRepositories::FromDirectoryRecursive';
+ is scalar($i->repositories->flatten), 3, 'Found 6 repos';
+ isa_ok $i, 'Gitalist::Git::CollectionOfRepositories::FromDirectory';
}
{
is scalar($i->repositories->flatten), 6, 'Found 6 repos recursively using config';
isa_ok $i, 'Gitalist::Git::CollectionOfRepositories::FromDirectoryRecursive';
}
+ {
+ my($tempfh, $wl) = tempfile(UNLINK => 1);
+ print {$tempfh} "repo1";
+ close $tempfh;
+ my $i = test_with_config({ repo_dir => "$FindBin::Bin/lib/repositories", whitelist => $wl });
+ is scalar($i->repositories->flatten), 1, 'Found 1 repos using whitelist';
+ isa_ok $i, 'Gitalist::Git::CollectionOfRepositories::FromDirectory::WhiteList';
+}
{
my $i = test_with_config({ repos => [
"$FindBin::Bin/lib/repositories/nodescription",
]});
is scalar($i->repositories->flatten), 3, 'Found 3 repos';
+ isa_ok $i, 'Gitalist::Git::CollectionOfRepositories::FromListOfDirectories';
}
sub test_with_config {