[pkg-perl-tools] 06/08: Add test for failback feature in pull requests
Alex Muntada
alexm-guest at moszumanska.debian.org
Sat Dec 3 18:11:42 UTC 2016
This is an automated email from the git hooks/post-receive script.
alexm-guest pushed a commit to branch master
in repository pkg-perl-tools.
commit 08d93497fe65ace31a791c65c75abbe4eeb361f4
Author: Alex Muntada <alexm at alexm.org>
Date: Sat Dec 3 19:00:41 2016 +0100
Add test for failback feature in pull requests
---
t/github.t | 36 ++++++++++++++++++++++++++++++------
1 file changed, 30 insertions(+), 6 deletions(-)
diff --git a/t/github.t b/t/github.t
index bfd075f..ee3e995 100644
--- a/t/github.t
+++ b/t/github.t
@@ -14,12 +14,14 @@ BEGIN {
=> "GitHub tests require DPT_GITHUB_OAUTH token,"
. " a working Debian::PkgPerl::GitHub,"
. " Debian::PkgPerl::Message,"
- . " and Debian::PkgPerl::Patch"
+ . " Debian::PkgPerl::Patch,"
+ . " and Test::MockModule"
unless $ENV{DPT_GITHUB_OAUTH}
and $ENV{DPT_GITHUB_OAUTH} =~ /^\w+$/
and eval { use Debian::PkgPerl::Patch; 1 }
and eval { use Debian::PkgPerl::Message; 1 }
- and eval { use Debian::PkgPerl::GitHub; 1 };
+ and eval { use Debian::PkgPerl::GitHub; 1 }
+ and eval { use Test::MockModule; 1 };
}
use Test::RequiresInternet ( 'github.com' => 22 );
@@ -43,10 +45,32 @@ my $msg = Debian::PkgPerl::Message->new(
interactive => 0,
);
-my $gh = new_ok( 'Debian::PkgPerl::GitHub', [ message => $msg ] );
+my $class = 'Debian::PkgPerl::GitHub';
-my $url = $gh->forward();
-isnt( $url, undef, 'pull request' );
-diag $url;
+subtest 'pull request' => sub {
+ my $gh = new_ok( $class, [ message => $msg ] );
+
+ my $url = $gh->forward();
+ isnt( $url, undef, 'successful pull request' );
+ diag $url;
+
+ done_testing();
+};
+
+subtest 'fallback' => sub {
+ my $mock = Test::MockModule->new($class);
+ $mock->mock( forward_patch_as_pull_request => sub { die 'mock' } );
+
+ my $gh = new_ok( $class, [
+ message => $msg,
+ fallback => 1,
+ ]);
+
+ my $url = $gh->forward();
+ isnt( $url, undef, 'failed pull request' );
+ diag $url;
+
+ done_testing();
+};
done_testing();
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-perl/packages/pkg-perl-tools.git
More information about the Pkg-perl-cvs-commits
mailing list